502错误

php7.0+nginx+mysql+centos7.0

排查步骤一: 查看nginx日志

  • 若日志没有报什么错,一切正常,显然不是nginx出的问题;跳过此

# 1、 FastCGI进程是否已经启动
ps aux | grep php

# 2、 FastCGI worker进程数是否不够; 判断是否接近FastCGI进程,接近配置文件中设置的数值,表明worker进程数设置太少;
netstat -anpo | grep “php-cgi” | wc -l


# 3、 FastCGI执行时间过长 (根据实际情况调高以下参数值)
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;

# 4、FastCGI Buffer不够 (nginx和apache一样,有前端缓冲限制,可以调整缓冲参数)
fastcgi_buffer_size 32k;
fastcgi_buffers 8 32k;


# 5、 其它原因, CPU和内存爆满接近100%, 优化 || 升级配置

排查步骤一: 查看php日志

nginx 502 Bad Gateway出现的原因:

WARNING: [pool www] server reached pm.max_children setting (5), consider raising it 解决方法

php-fpm.conf 配置 性能优化 参数详解

总结:内存小的建议用动态(pm = dynamic),内存大的建议用静态(pm = static)。

Last updated