我们在只有一个网站的大型专用服务器上运行centos / cPanel。我们需要速度和能力来上传'nobody'下的文件。这意味着suPHP和DSO都出局了。所以php处理程序是mod_fcgid。不时apache错误日志会显示mod_fcgid:在40秒内读取数据超时。我们假设这意味着使用easyapache安装时没有正确配置mod_fcgid。
在阅读g关于如何解决之后,我们发现了两个花絮。一个涉及MPM。令人惊讶的是,另一个显示了如何增加超时响应(通常增加超时响应是坏事,因为服务器内部有更糟糕的事情)。我们应该使用带有mod_fcgid的MPM事件,prefork和/或worker吗?我们目前已配置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配置。
答案 0 :(得分:0)
我的测试解决方案,同样的问题
目标配置文件:
/usr/local/apache/conf/includes/pre_virtualhost_global.conf
目标价值:
FcgidIOTimeout
应用更改:
/ scripts / rebuildhttpdconf
/etc/init.d/httpd restart
答案 1 :(得分:-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>