Virtualmin:“通过fcgid执行PHP需要Apache mod_fcgid模块”

我有一台Virtualmin的CentOS服务器。 我已经使用Apache mod_fastcgi以我想要的方式configuration了PHP。 但是,当我在Virtualmin中点击“重新检查configuration”时,

PHP execution via fcgid requires the Apache mod_fcgid module

这篇文章说改变Default PHP execution modeCGI ,但我无法在任何地方find这样的选项!

mod_fastcgi(www.fastcgi.com)是一个第三方模块,其指令有一个“FastCgi”前缀。

mod_fcgid http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html是一个Apache模块,其指令有一个“Fcgid”前缀。

我build议你删除mod_fastcgi并使用mod_fcgid。

这对于PHP来说是个好消息,因为这样你就可以转储apache mpm-prefork,然后用更好的mpm-worker,通过不安装mod_php,而是使用php作为快速的cgi。 对于debian来说,这意味着:

•删除apache2-mpm-prefork和libapache2-mod-php5。

•添加apache2-mpm-worker,libapache2-mod-fcgid和php5-cgi。 使用php5-cgi,你不需要一个自定义的快速cgi包装器,你可以直接使用php命令行(注意/ usr / lib / cgi-bin / php5)。

•对于使用PHP的mod_fcgid,请注意,PHP作为FastCGI在处理如此多的请求(请参阅PHP_FCGI_MAX_REQUESTS)后有自己的终止function。 FcgidMaxRequestsPerProcess有助于避免在处理其限制后向包装器应用程序发送附加请求。

•在每个虚拟主机或全局范围内:

     FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 200
     FcgidMaxRequestsPerProcess 200

•然后在目录里面:

     AddHandler fcgid脚本.php
     FcgidWrapper / usr / lib / cgi-bin / php5 .php
    选项+ ExecCGI

现在,我通过在Apache中启用mod_fcgid来解决这个问题,但是没有configuration它。 但那是在浪费记忆,我很想知道解决这个问题的“正确”方法!