LAMPP - CGI脚本不工作
问题描述:
你好
我有一个LAMPP网络服务器。我试图打开名为“Hello.cgi”的CGI脚本。LAMPP - CGI脚本不工作
它包含:
#!/usr/bin/perl
print "Hello World.\n";
的路径是:/opt/lampp/htdocs/dashboard/cgi-bin/hello.cgi
当我打开:“127.0.0.1/dashboard/cgi -bin/hello.cgi“,我得到如下:
服务器错误!
服务器遇到内部错误,无法完成您的请求。
错误消息: 结束前头输出脚本的:hello.cgi
如果你认为这是一个服务器错误,请与网站管理员联系。
CGI脚本是用Perl编写的。
如果您需要更多关于我的问题的信息,请说出来。
~~ runasas
答
首先,你不应该不包括线use strict;
和use warnings;
写一个Perl程序。其次,如果您在使用CGI程序时遇到问题,您应该检查Web服务器错误日志以获取有关该问题的更多详细信息。
第三,CGI程序的输出需要包含内容类型标题。所以,你需要添加以下内容:
print "Content-Type: text/plain\015\012\015\012";
这变得更容易,如果你使用CGI module:
use CGI;
print header('text/plain');
但实际上,在2016年,你不应该编写CGI程序 - 有可用plenty of good alternatives。
基本上有100种不同的事情可能是错误的。你检查了服务器日志吗?你有没有尝试从命令行运行脚本?你是否发送任何HTTP头文件? –
@MattJacob我现在在命令行中运行它,它工作。谢谢! – runasas
是的,但是......这只是证实脚本本身没有错。 –