我对 perl 和 apache 服务器都是新手。我正在尝试为 CGI 脚本创建一个基本的 Hello World。这是我的 hello world CGI 文件的代码:
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "<H1>Hello World</H1>\n";
当我在命令行上执行 CGI 脚本 ./hello.cgi 时,它可以工作,但是当我在浏览器中打开 hello.cgi 时,它只显示 cgi 文件的文本。
当我查看 /var/log/apache2/error_log 中的 error_log 时,我可以看到 mod_perl 正在运行:
Apache/2.2.21 (Unix) DAV/2 mod_perl/2.0.5 Perl/v5.12.3 configured -- resuming normal operations
但是当我运行以下 perl 程序时,似乎我没有“MOD_PERL”环境变量:
if (exists $ENV{"MOD_PERL"}) {
print "YAY!\n";
}
else{
print"mod_perl is not working\n";
}
顺便说一句,我的 hello.cgi 文件和上面的 perl 脚本位于 /Users/myusername/Sites/
有人可以帮我正确配置 mod_perl 以便我可以在浏览器中正确查看 hello.cgi 吗?我一直在阅读 mod_perl 文档和搜索论坛很多很多小时,但无济于事。提前致谢
@SebastianStumpf 我得到了你的第一个例子,但我似乎仍然无法让 mod_perl 脚本运行。我一直在阅读文档,但我无法弄清楚。顺便说一句,谢谢你的帮助。我非常感谢
更新:我相信我成功了!谢谢您的帮助!