Nginx服务器出现502错误的解决办法
1、查看当前的PHP FastCGI进程数是否够用 netstat -anpo | grep "php-cgi"| wc -l 如果实际使用的“FastCGI进程数”接近预设的“FastCG...
1、查看当前的PHP FastCGI进程数是否够用 netstat -anpo | grep "php-cgi"| wc -l 如果实际使用的“FastCGI进程数”接近预设的“FastCGI进程数”,那么,说明“FastCGI进程数”不够用,需要增大。 2、部分PHP程序的执行时间超过了Nginx的等待时间 可以适当增加nginx.conf配置文件中FastCGI的timeout时间,php.ini中memory_limit设低了会出错,修改了php.ini的memory_limit为64M,重启nginx,发现好了,原来是PHP的内存不足了。 3、max-children和max-requests 一台服务器上运行着nginx php(fpm) xcache,访问量日均 300W pv左右 最近经常会出现这样的情况: php页面打开很慢,cpu使用率突然降至很低,系统负载突然升至很高,查看网卡的流量,也会发现突然降到了很低。 4、增加缓冲区容量大小 将nginx的error log打开,发现“pstream sent too big header while reading response header from upstream”这样的错误提示。查阅了一下资料,大意是nginx缓冲区有一个bug造成的,我们网站的页面消耗占用缓冲区可能过大。参考老外写的修改办法增加了缓冲区容量大小设置,502问题彻底解决。后来系统管理员又对参数做了调整只保留了2个设置参数:client head buffer,fastcgi buffer size。 5、request_terminate_timeout 如果主要是在一些post或者数据库操作的时候出现502这种情况,而不是在静态页面操作中常见,那么可以查看一下php-fpm.conf设置中的一项:request_terminate_timeout 这个值是max_execution_time,就是fast-cgi的执行脚本时间。 0s为关闭,就是无限执行下去。(当时装的时候没仔细看就改了一个数字) 发现,问题解决了,执行很长时间也不会出错了。 优化fastcgi中,还可以改改这个值5s 看看效果。 php-cgi进程数不够用、php执行时间长、或者是php-cgi进程死掉,都会出现502错误。 部分文章来源与网络,若有侵权请联系删除,谢谢!
部分网站内容及图片来源于网络,如有侵权或违规内容请联系管理员删除!
序列号 | CPU | RAM | HDD | 带宽 | 售价(美元) | 免费试用 |
---|---|---|---|---|---|---|
香港服务器1 | E5-2620 | 32G | 1T HDD | 50M/无限流量 | $196.00 | 立即申请 |
香港服务器2 | E5-2650 | 32G | 1T HDD | 50M/无限流量 | $256.00 | 立即申请 |
香港服务器3 | E5-2680 | 32G | 1T HDD | 50M/无限流量 | $316.00 | 立即申请 |
香港服务器4 | E5-2690 | 32G | 1T HDD | 50M/无限流量 | $336.00 | 立即申请 |
香港服务器5 | E5-2697 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器6 | E5-2620*2 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器7 | E5-2650*2 | 32G | 1T HDD | 50M/无限流量 | $436.00 | 立即申请 |
香港服务器8 | E5-2680*2 | 32G | 1T HDD | 50M/无限流量 | $476.00 | 立即申请 |
香港服务器9 | E5-2690*2 | 32G | 1T HDD | 50M/无限流量 | $556.00 | 立即申请 |
香港服务器10 | E5-2697*2 | 32G | 1T HDD | 50M/无限流量 | $596.00 | 立即申请 |
香港服务器11 | E5-2680v4*2 | 32G | 1T HDD | 50M/无限流量 | $696.00 | 立即申请 |
香港服务器12 | E5-2698v4*2 | 32G | 1T HDD | 50M/无限流量 | $796.00 | 立即申请 |
上一篇: 应用服务器和数据库服务器的区别