所以我正在寻找我使用PHP-FPM在Apache 2.4服务器上持续超时的原因。 这是错误:
[proxy_fcgi:error] [pid ###] (70007)The timeout specified has expired:[client XXXXXXXX] AH01075 : Error dispatching request to:, referer: http://address
在下面的configuration文件中,我已经玩过每一个我显示的超时。 我在fpm有两个池:
[www] ;user and group info and listening ip and such up here access_log = /path/to/access.log request_terminate_timeout = 15 php_admin_value[error_log] = /path/to/error.log php_admin_flag[log_errors] = on
第二个:
[app] ;user and group info and listening ip and such up here access_log = /path/to/access.log request_terminate_timeout = 300 php_admin_value[error_log] = /path/to/error.log php_admin_flag[log_errors] = on
和我的php.ini:
max_execution_time = 300 max_input_time = 300 default_socket_timeout = 300
那么我的Apacheconfiguration:
Timeout 80 <FilesMatch "^(some | names | of | files)\.php$"> SetHandler "proxy:fcgi://123.45.5.67:7891" </FilesMatch> <FilesMatch "^!(some | names | of | files)\.php$"> SetHandler "proxy:fcgi://123.45.5.67:5432" </FilesMatch>
httpd.conf中显然还有很多,但没有指定超时(除了一个不相关的ProxyPass设置为300秒)。 我已经读过这个线程: https : //unix.stackexchange.com/questions/270655/how-to-find-and-edit-apache-timeout ,但我用rpm -q --changelog httpd | less
rpm -q --changelog httpd | less
,并有一个补丁,该错误。 当我只有一个游泳池的时候,超时也更加混乱。 任何地方从24秒到6.7分钟(以5Kb / s的速度上传速度;没有问题的代码,是有目的的testing)。 有一段时间,它似乎是与request_terminate_timeout
相关,但相关性已经消失。
谢谢你的帮助。
所以,事实certificate,这与油门速度有关。 这个要求很低,要求超时。 我修改了RequestReadTimeout:
RequestReadTimeout header=20-120,MinRate=50 body=20,MinRate=50