得到 [cgi:error] AH01215: (8)exec 格式错误: '/cgi-bin/echarts.js' 的 exec 失败

Got [cgi:error] AH01215: (8)Exec format error: exec of '/cgi-bin/echarts.js' failed

提问人:Rey Lee 提问时间:8/25/2023 最后编辑:Rey Lee 更新时间:8/27/2023 访问量:64

问:

Perl 脚本使用 CGI 通过 echarts.js 生成 html。错误信息如下:

[Fri Aug 25 10:07:17.488252 2023] [cgi:error] [pid xx] [client xxxx] AH01215: (8)Exec format error: exec of '/cgi-bin/echarts.js' failed, referer: http://xxxx/cgi-bin/jindl_test.pl
[Fri Aug 25 10:07:17.488731 2023] [cgi:error] [pid xx] [client xxxx] End of script output before headers: echarts.js, referer: http://xxxx/cgi-bin/jindl_test.pl

脚本代码如下:

#!/usr/local/bin/perl5 -w

print "Content-type: text/html\n\n";
use CGI qw(:standard);
use CGI qw(:cgi);

print "<html>\n";
print "<head>\n";
print "<title>test</title>\n";
print "<script src=\"echarts.js\"></script>\n";
print "</head>\n";

print "<body>\n";
print "<div id=\"main\" style=\"width: 600px;height:400px;\"></div>\n";
print "<script type=\"text/javascript\">";
print "var myChart = echarts.init(document.getElementById('main'));\n";
print "var option = {\n";
print "title: {text: 'Demo'},\n";
print "tooltip: {},\n";
print "xAxis: {data: ['Shirts', 'Cardigans', 'Chiffons', 'Pants', 'Heels', 'Socks']},\n";
print "yAxis: {type: 'value'},\n";
print "series: [\n";
print "{name: 'sales', data: [120, 200, 150, 120], type: 'line'},\n";
print "{name: 'values', data: [100, 300, 250, 100], type: 'line' }\n";
print "],\n";
print "legend: {data: ['sales','values']}\n";
print "};\n";
print "myChart.setOption(option);\n";
print "</script>\n";

print "</body></html>\n";

存在两个脚本。一个是“echarts.js”,另一个是perl脚本之上。正如脚本所示,echarts.js 包含在 perl 脚本中。(打印 “<script src=”echarts.js“> </script>\n”;)

这个剧本有什么不合适的地方吗?

Perl CGI

评论

0赞 brian d foy 8/26/2023
作为不相关的注释,您可以将所有这些 print 语句组合到一个带有 here 文档的字符串中(或包含所有 HTML 的单个多行 e 字符串)。

答:

1赞 ikegami 8/27/2023 #1

Web 服务器配置为将所有内容视为要执行的程序。 不是一个要执行的程序,所以你需要把它放在其他地方。cgi-binecharts.js

评论

0赞 Rey Lee 8/27/2023
它有效。谢谢池上。没有显示错误,但我仍然无法从网页获取图表。但是,我可以通过 html 获取图表,这与 perl 脚本生成的图表相同。你知道原因吗?谢谢
0赞 ikegami 8/28/2023
我无法评论为什么我从未见过的代码不起作用。