阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

解决Nginx+PHP-FPM出现502(Bad Gateway)错误问题

156次阅读
没有评论

共计 1350 个字符,预计需要花费 4 分钟才能阅读完成。

Bad Gateway 就是性能或资源不足所导致了,我们浏览网页时常常会碰到一些 nginx 环境出现这类提醒了,下面我来给大家解决在使用 nginx 服务器时出来的 502(Bad Gateway)错误。

买了一台云服务器后,系统自动给安装了 Nginx 1.6 + php 5.3.28 + mysql 5.5

把 PHP 程序放进云服务器后,首次测试程序访问正常,速度正常

但是把程序放到线上访问后,会逐步发现,访问的 PHP 页面越来越慢,最后直接出现 502 bad gateway 问题。

(在 php-fpm.conf 中,原本就设置了 pm = static 模式,并设置 pm.max_children = 128)

分析:

打开 nginx 访问日志,访问量并不高,平均每秒也就 10 个不到的请求 IP,所以,按理,这点访问量,不可能导致出现 PHP 请求过多,出现 502 的。

打开 php-fpm.conf 日志,出现很多 PHP 警告问题,

再调整 php-fpm 的 pm 模式为 pm = dynamic,

pm.start_servers = 20
 
pm.min_spare_servers = 5
 
pm.max_spare_servers = 35
 
pm.max_requests = 10000
 
 
 
重启 php-fpm 后,用 ps 查看 php 进程:
 
ps -ef |grep -c php-fpm
    22
 
刚开始,访问 PHP 很快,然后越来越慢,再次查看进程
 
ps -ef |grep -c php-fpm
    28

从日志和进程变化来看,可以断定是 PHP 程序出现的问题,是 PHP 请求太多造成的。大概就是 PHP 页面中,调用了太多 PHP 的请求。把这个问题告诉开发后,开发解决之后,服务器再没出现 502。

从上面配置来看我们是配置了一个请求数量了,当然这个配置不是最佳的哦,如果你还碰到此类问题可以对参数进行调整。

还有一篇:Nginx+PHP-FPM 遇到的 502 报错 http://www.linuxidc.com/Linux/2012-02/54782.htm

LAMP-PHP-fpm 服务器配置 http://www.linuxidc.com/Linux/2014-06/103093.htm

Ubuntu 14.04 LTS 安装 LNMP Nginx\PHP5 (PHP-FPM)\MySQL http://www.linuxidc.com/Linux/2014-05/102351.htm

高负载 PHP-FPM 调优 http://www.linuxidc.com/Linux/2013-07/86963.htm

Nginx php-fpm 出现 502 解决办法和调优心得 http://www.linuxidc.com/Linux/2013-01/78566.htm

Nginx+PHP-FPM 在两台服务器实现 http://www.linuxidc.com/Linux/2012-11/74001.htm

Ubuntu 10.04 配置 nginx + php-fpm 模式 http://www.linuxidc.com/Linux/2012-11/74001p2.htm

Nginx&&PHP-FPM 配置及优化指南(上)http://www.linuxidc.com/Linux/2012-07/65732.htm

Nginx 的详细介绍 :请点这里
Nginx 的下载地址 :请点这里

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计1350字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中