![在 Apache 服务器上运行 Perl CGI 脚本的最低必要要求是什么?](https://linux22.com/image/1434405/%E5%9C%A8%20Apache%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E8%BF%90%E8%A1%8C%20Perl%20CGI%20%E8%84%9A%E6%9C%AC%E7%9A%84%E6%9C%80%E4%BD%8E%E5%BF%85%E8%A6%81%E8%A6%81%E6%B1%82%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
我的 Apache 将 perl 脚本显示为纯文本,而不是执行它们。谷歌搜索和设置让我很沮丧,因为有大量很长的样本,而我的服务器大多忽略了它们。
问题是:在我的网站上运行 Perl CGI 脚本的绝对必要的最低要求是什么?
请不要出现安全问题,不要出现其他问题,只运行 Perl。
目前我已经Apache2
安装,mod_perl
安装,perl
安装,虚拟主机安装,执行权限授予。
我已经index.cgi
将其显示为纯文本。
以下是我的尺寸配置:
一个特殊的问题是:为什么AddHandler
指令两次被默默忽略?如果明确说明,文件.cgi
应该由处理cgi-script
,那么如何可以默默忽略它(日志中没有任何警告)。
从我的角度来看,任何指令要么被执行,要么导致错误。它不能只是悬在空中,好像它根本就不是一个指令。
更新
这些文件是 Bugzilla 安装。也就是说,里面有很多*.cgi
包含 perl 代码的文件。
答案1
在 Apache 中运行 Perl CGI 脚本不需要 mod_perl。(但它可能会加快其中一些脚本的速度。)
由于上面显示的配置相当不完整,可能缺少但不清楚的是,是否加载了 mod_cgid 或 mod_cgi。在 Apache 2.2 中,您必须使用其中哪一个取决于 MPM。
如果您使用的是 Debian 或 Ubuntu,拨打电话a2enmod cgi
或a2enmod cgid
加上一个service apache2 restart
可能就足以解决您的问题。不确定这些帮助脚本是否也适用于其他发行版。