mod_fcgid:在40秒内读取数据超时

时间:2012-02-28 18:14:15

标签: mod-fcgid

我们在只有一个网站的大型专用服务器上运行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配置。

2 个答案:

答案 0 :(得分:0)

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

目标配置文件:

  

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

目标价值:

  

FcgidIOTimeout

应用更改:

  

/ scripts / rebuildhttpdconf

     

/etc/init.d/httpd restart

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

答案 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>