我今天刚刚收到我的 dedi 服务器访问权限,我安装了 apache:
yum install httpd
之后,我配置了位于 /etc/httpd/conf 的 httpd.conf,修改了服务器名称,添加了服务器 IP 和我的电子邮件。
Perl 已经安装好了,当我输入 perl -v 时,我得到:
This is perl, v5.10.1 (*) built for x86_64-linux-thread-multi
我安装了 mod_perl:
yum install mod_perl
我再次编辑了 /etc/httpd/conf/httpd.conf,并添加:
AddHandler cgi-script .cgi .pl
Options +ExecCGI
到:
<Directory "/var/www/cgi-bin">
AddHandler cgi-script .cgi .pl
Options +ExecCGI
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
我通过 sFTP 将一个 hello world cgi 文件上传到 /var/www/cgi-bin,当我浏览该文件时出现内部服务器错误。我已经为该文件赋予了 755 chmod
你好世界文件:
#!/usr/bin/perl
print("Content-type:text/html\n\nHello World!");
测试网址:http://78.138.126.87/cgi-bin/test.cgi
请帮忙!
答案1
答案2
根据您的配置,您肯定是想从 perl cgi 二进制文件而不是 mod_perl 运行 perl 脚本,而这并不是您所想的那样。
您的错误日志说了什么?如果您能发布该日志,那将非常有帮助。我敢打赌,ExecCGI 在树的上层被禁用了。