2012-02-28 37 views
2

我们在只有一个网站的专用服务器上运行centos/cPanel。我们需要速度和能力来上传'nobody'下的文件。这意味着suPHP和DSO不在了。所以php处理程序是mod_fcgid。不时Apache的错误日志将显示mod_fcgid:在40秒内读取数据超时。我们认为这意味着使用easyapache进行安装时,mod_fcgid没有正确配置。mod_fcgid:在40秒内读取数据超时

在阅读完有关如何修复的问题后,我们发现了两条消息。一个涉及MPM。另一方面,令人惊讶的是,它展示了如何增加超时响应(通常增加超时响应是件坏事,因为服务器内部存在更糟糕的情况)。

我们应该使用MPM事件,prefork和/或worker与mod_fcgid吗?我们目前已经配置了prefork。

如果我们这样做增加超时,我们应该使用以下设置:

IPCConnectTimeout 20 
ProcessLifeTime 120 
IdleTimeout 60 
IdleScanInterval 30 
MaxRequestsPerProcess 499 
MaxProcessCount 100 

OR

FcgidProcessLifeTime 8200 
FcgidIOTimeout 8200 
FcgidConnectTimeout 400 
FcgidMaxRequestLen 1000000000 

而如果我们使用这两种设置应该在哪里,他们设置:1) php.fcgi脚本,或2)Apache中的FastCGI配置。

+1

我能找到更多。 mod_fcgid有一个错误。这是截至2012年2月。 进程不会死后,优雅的Apache重新启动导致PHP吸内存(以及用户限制)。 http://forums.cpanel.net/f5/apache-graceful-restarts-fastcgi-mod_fcgid-cant-lock-process-table-pid-151373-p2.html 我的修复程序太过用户限制,并且每天都做硬apache重启直到这个bug被修复。 – complexi 2012-02-29 15:28:32

+0

这是修复它:http://forums.cpanel.net/f5/apache-graceful-restarts-fastcgi-mod_fcgid-cant-lock-process-table-pid-151373-p3.html#post1096091 – complexi 2012-03-08 18:08:19

+0

我要去测试下面,因为它是我实施我的第一个修补程序后发布:http://forums.cpanel。net/f5/apache-graceful-restarts -fastcgi-mod_fcgid -cant -lock-process-table-pid -151373-p3.html#post1109051 – complexi 2012-10-04 10:06:35

回答

-2

/etc/apache2/mods-enable/fcgid.conf

*/MODS的可用/ fcgid.conf * /站点启用/ site.com.vhost

<IfModule mod_fcgid.c> 
    AddHandler fcgid-script .fcgi 
    IdleTimeout 300 
    BusyTimeout 300 
    ProcessLifeTime 7200 
    IPCConnectTimeout 300 
    IPCCommTimeout 7200 
</IfModule> 
0

我的测试解决方案,同样的问题

目标配置文件:

/usr/local/apache/conf/includes/pre_virtualhost_global.conf

目标值:

FcgidIOTimeout

应用更改:

/脚本/ rebuildhttpdconf

/etc/init.d/httpd重启

参考: https://wiki.mikejung.biz/Fcgid#FcgidMaxRequestLen