我注意到我们的一台服务器在logrotate运行之后就开始返回错误,即在nginx错误日志中我可以看到:
当读取来自上游的响应标题时,客户端:xxx.yyy.zz.ww,服务器:www.test.com,请求:“GET”错误8501#0:* 118126869失败(104:连接复位) /index.php HTTP / 1.1“,上游:”fastcgi://127.0.0.1:9011“,主机:”www.test.com“
我已经尝试添加postrotate行动,将使PHP重新装载优雅,但错误仍在发生,我们目前的logrotate如下:
/var/log/php5-fpm.log { daily missingok rotate 52 compress delaycompress notifempty create 644 root root postrotate [ ! -f /var/run/php5-fpm.pid ] || kill -USR2 `cat /var/run/php5-fpm.pid` endscript }
PHPconfiguration如下:
[www-9011] user = www-data group = www-data listen = 127.0.0.1:9011 listen.backlog = 65535 pm = ondemand pm.max_children = 50 pm.process_idle_timeout = 10s; pm.max_requests = 500 rlimit_files = 16384 chdir = / catch_workers_output = no php_admin_value[error_log] = /var/log/fpm-php.www.log php_admin_flag[log_errors] = on
我们正在运行Ubuntu的12.04和PHP 5.3.10