我已经在 FreeBSD 12 中成功安装了 perl5 和 apache24。然后我启用了 apache24,/etc/rc.conf
并看到 index.html 位于路径中/usr/local/www/apache24/data
。然后在文件中,/usr/local/etc/apache24/httpd.conf
我取消注释了以下行
AddHandler cgi-script .cgi
里面<IfModule mime_module>
,并且还添加.pl
到行尾。
然后我在同一个文件中添加了以下行
Options FollowSymLinks +ExecCGI
行后
Options Indexes FollowSymLink
并重新启动 Apache,但收到错误
所有选项都必须以 + 或 - 开头,或者不能有选项
所以我添加了行,FollowSymLink
然后重新启动 Apache,没有任何错误。但如果我按照链接操作,mydomain.com/test.pl
我仍然会看到我的 PERL 代码显示为纯文本,而不是正在执行。
我的 PERL 代码是
#!/usr/local/bin/perl
print "Content-type: text/html\n\n";
print "Hello world!";
如果我通过命令在命令行中运行代码,perl /usr/local/www/apache24/data/test.pl
我会收到两行,即Content-type: text/html
和Hello world!
。该文件的权限为 755。
我还能做什么来解决这个问题?
答案1
好的,我httpd.conf
也取消了该行的注释
LoadModule cgi_module libexec/apache24/mod_cgi.so
现在代码已成功执行