服务器错误或带有CGI脚本的空白页面

时间:2017-11-18 13:45:17

标签: bash perl cgi

我有这么一点代码,由于某种原因,从http://localhost/cgi-bin/sysinfo.sh运行时无法执行。我在CentOS 7的虚拟机上。我将获得所有可以得到的帮助。我似乎无法正确地获得这些内容,但它们在Vi中是正确的。

Traceback (most recent call last):
  File "/home/souvik/Sublime-text programs/TestCode.py", line 4, in <module>
    for i in v.keys():
RuntimeError: dictionary changed size during iteration
[Finished in 0.1s with exit code 1]

当我将它作为shell脚本运行时... html标签全部显示以及命令的输出。

内容类型:text / html

var swiper = new Swiper('.swiper-container', { 
....
...
....
});

$(".swiper-container").hover(function() {
    (this).swiper.autoplay.stop();
}, function() {
    (this).swiper.autoplay.start();
});

2 个答案:

答案 0 :(得分:2)

打印内容的echo命令在发布的代码中缺少结束"。 在任何情况下, 双引号字符在HTML内容中很常见,这种打印方式可能会在以后引起麻烦。 使用here-document会更容易:

#!/bin/bash

cat <<EOF
Content-type: text/html

... (HTML content here)

EOF

另请注意,为了能够运行此功能, 该文件必须是可执行的(chmod +x script.sh), 并且必须将Web服务器配置为执行脚本, 而不是打印其内容,这是一种常见的默认设置。

答案 1 :(得分:0)

为什么回声???!

print“Content-type:text / html \ n \ n”;

打印“等等等等”,并记住第二个“你没有它。”