Nginx 502 bad gateway问题的解决方法

来自:吾爱编程
时间:2020-07-31
阅读:

作为一个开发人员经常会遇到网站报502 bad gateway,产生这个原因的有很多,接下来免费资源网为大家介绍一下502 bad gateway问题的解决方法,有需要的小伙伴可以参考一下:

1、介绍:

502 Bad Gateway是指错误网关,无效网关;在互联网中表示一种网络错误。表现在WEB浏览器中给出的页面反馈。它通常并不意味着上游服务器已关闭(无响应网关/代理) ,而是上游服务器和网关/代理使用不一致的协议交换数据。鉴于互联网协议是相当清楚的,它往往意味着一个或两个机器已不正确或不完全编程。

2、产生原因(PHP开发环境):

    (1)、php-cgi进程过少,可以通过修改/usr/local/php/etc/php-fpm.conf 将其中的max_children值适当增加;

    (2)、执行超时,可以通过修改/usr/local/php/etc/php.ini 将max_execution_time 改为300

    (3)、磁盘空间不足,可以使用 # df -h命令查看磁盘使用量

    (4)、php-cgi进程卡死

3、排查方法:

    (1)、查看php fastcgi的进程数

netstat -anop | grep php-cgi | wc -l
netstat -anpo | grep php-fpm | wc -l

    (2)、查看当前进程,如果进程数过多,增加进程数量:

ps aux | grep php-fpm

    (3)、调整/usr/local/php/etc/php-fpm.conf 的相关设置:

pm.max_children = 5
request_terminate_timeout = 60

    (4)、适当增加Nginx.conf配置文件中FastCGI的timeout时间

http
{
......
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
......
}
返回顶部
顶部