以下为本篇文章全部内容:
最近网站打开总是异常,网站会偶尔死掉,我用的是阿里云的一台低配linux服务器,第一想法就是登陆进去查看日志
[error] 7120#0: *7779 connect() failed (111: Connection refused) while connecting to upstream, client: xxx, server: xxx, request: "GET xxx HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "xxx", referrer: "xxx" [error] 7120#0: *7982 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: xxx, server: xxx, request: "GET xxx HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "xxx" [error] 7120#0: *7847 connect() failed (110: Connection timed out) while connecting to upstream, client: xxx, server: xxx, request: "GET xxx HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "xxx"
看到这样的日志马上就联想到了是fastcgi出了问题,这应该是在连接到php那边的时候出了问题所导致的,所以我们要去排除问题就得先从php-fpm下手因为采用的方法所nginx代理php-fpm的9000端口,既然知道原因就好办了。
第一步:查看php-fpm是否启动,可以通过以下办法排除
ps -aux | grep php-fpm 这条命令查看是否有php-fpm的进程在运行
刚刚我还提到了一个点就是9000端口,那么我也可以通过查看网络端口确定是否在运行
netstat -tanlp | grep 9000
以上方法可以帮助我们排除php-fpm是否处于正常运行状态
第二步:修改php-fpm.conf配置文件,因为出现上述问题是因为php-fpm队列满了的原因导致的,因此我们需要修改一个参数
pm.max_children 这个值修改稍微大一点,修改多少取决自己实际情况和机器配置
第三步:重启php-fpm然后继续观察nginx的错误日志,等待网站运行一段时间看看还有没有这个错误,如果没有问题解决。
总赞数量:18274
总踩数量:128087
文章数量:29