一次nginx 504 Gateway Time-out错误排查、解决记录
记一次莫名其妙的网站失去响应排查。之前网站一直是使用nginx做代理后端的apache运行php来提供服务。那应该还是在nginx和php-fpm身上,查看nginx的错误日志,可以看到马上重启php-fpm,问题没有了,网站可以访问了。再次访问该页面,依然没有响应,但同时访问别的页面正常,该页面刷新几次后,整个网站都是bad gateway timeout了。这个脚本就是采集快递信息的,里面用到了php_curl。PHP脚本如果执行时间超过php.ini中的配置项max_execution_time不出结果就会强制退出。查看了php.ini中max_execution_time确实配了,值为30。当然,除了这种方法外,php-fpm里也提供参数供我们强制杀死长时间无结果的进程,只是该参数默认没打开。php-fpm的配置文件里可以设置一个参数request_terminate_timeout,请求终止的超时时间,当请求执行超过这个时间就会被kill。
下载地址
用户评论