Apache-2.4

無法設置 Apache 以在 FreeBSD 中執行 PERL 文件

  • June 24, 2021

我已經在 FreeBSD 12 中成功安裝了 perl5 和 apache24。然後我啟用了 apache24/etc/rc.conf並看到 index.html 放置在 path 中/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。

我還能做些什麼來解決問題?

好的,我也取消了httpd.conf註釋

LoadModule cgi_module libexec/apache24/mod_cgi.so

現在程式碼已成功執行

引用自:https://serverfault.com/questions/1067668