admin 发表于 2023-3-2 19:25:51

Linux服务器Nginx常见502 Bad Gateway错误解决办法

<p></p>
<p>常见的<strong><ahref="http://www.wangchao.info/tag/nginx">Nginx</a> 502 Bad Gateway</strong>解决办法如下:</p>
<h2><strong>Nginx 502错误情况1:</strong></h2>
<p>网站的访问量大,而php-cgi的进程数偏少。</p>
<p>查看当前的PHP FastCGI进程数是否够用(如果实际使用的“FastCGI进程数”接近预设的“FastCGI进程数”,那么,说明“FastCGI进程数”不够用,需要增大):</p>
<pre lang="”LANGUAGE”">netstat -anpo | grep "php-cgi" | wc -l
</pre>
<p>只需增加php-cgi的进程数。具体就是修改<strong>/usr/local/php/etc/php-fpm.conf</strong> 文件,将其中的<strong>max_children</strong>值适当增加。这个数据要依据你的<ahref="http://www.wangchao.info/tag/vps">VPS</a>或独立<ahref="http://www.wangchao.info/tag/server">服务器</a>的配置进行设置。一般一个php-cgi进程占20M内存,你可以自己计算下,适量增多。</p>
<p>增加后重启一下:</p>
<pre lang="”LANGUAGE”">/usr/local/php/sbin/php-fpm restart
</pre>
<h2><strong>Nginx 502错误情况2:</strong></h2>
<p>CPU占用率、内存占用率非常高,遭到CC攻击.<br>
解决方法请参考:<ahref="http://www.wangchao.info/tag/linux">Linux</a> VPS下简单解决CC攻击</p>
<h2><strong>Nginx 502错误情况3:</strong></h2>
<p>CPU占用率不高,内存溢出。<br>
检查一下网站程序有没有问题?一般小偷站点常常会出现内存溢出。<br>
检查一下/var/log/目录下的日志,看看是不是有人爆破SSH和FTP端口?<br>
SSH、FTP遭到穷举也会占用大量内存。是的话改掉SSH端口和FTP端口即可</p>
<p>将网上找到的一些和502 Bad Gateway错误有关的问题和排查方法列一下,先从FastCGI配置入手:</p>
<p><strong>1.查看FastCGI进程是否已经启动</strong></p>
<p>NGINX 502错误的含义是sock、端口没被监听造成的。我们先检查fastcgi是否在运行</p>
<p><strong>2.检查系统Fastcgi进程运行情况</strong></p>
<p>除了第一种情况,fastcgi进程数不够用、php执行时间长、或者是php-cgi进程死掉也可能造成nginx的502错误<br>
运行以下命令判断是否接近FastCGI进程,如果fastcgi进程数接近配置文件中设置的数值,表明worker进程数设置太少</p>
<p><strong>3.FastCGI执行时间过长</strong></p>
<p>根据实际情况调高以下参数值</p>
<pre lang="”LANGUAGE”">fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
</pre>
                                        <p class="post-copyright">未经允许不得转载:<ahref="https://www.wangchao.info/">王超博客</a> &raquo; <ahref="https://www.wangchao.info/396.html">Linux服务器Nginx常见502 Bad Gateway错误解决办法</a></p>
页: [1]
查看完整版本: Linux服务器Nginx常见502 Bad Gateway错误解决办法