宝塔linux面板登录后502?宝塔面板修复命令

linux nginx 网站访问提示502 Bad Gateway怎么操作

1、FastCGI进程是否已经启动

ps aux| grep php

查看是否启动了php-fpm服务;

2、FastCGI worker进程数是否不够

运行linux命令:

netstat-anpo| grep“php-cgi”| wc-l

判断是否接近FastCGI进程,接近配置文件中设置的数值,表明worker进程数设置太少;

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、其它原因

出现502的情况太多了,(例如:你服务器目前的配置支撑不了你现有的业务。我有一个朋友服务器是4核8G的,经常一会出现502 Bad Gatewa,又一会正常。CPU和内存经常爆满接近100%,负载也接近4。最后,配置升级成8核16G后变就变正常了。)远远不只是博主所说的这几种!这几种只能说是最常用的吧!具体的原因一定要去查看服务器的日志;

Linux里面页面502怎么解决

1:php-cgi进程数不够用(我就是采用此方法解决的)

vim php-fpm.conf

修改其中的2个参数

(1)在安装好使用过程中出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf将其中的max_children值适当增加

这个数值是不确定的需要我们自己算的,这个值原则上是越大越好,php-cgi的进程多了就会处理的很快,排队的请求就会很少,减小出现502错误的机率。

一般来说,一台服务器的正常情况下每一个php-cgi要耗费的内存为20M左右。如果我就将此值设为80,那么也就是说大概要耗费服务器1600M内存。

查看一下当前系统中有多少个php-cgi进程在运行

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

如果这个值接近你的在配置文件里面设置的值,说明需要增加

注:这要根据机器的实际情况而定,每个机器的硬件设施和环境不一样

参数为:<value name=”max_children”>80</value>

(2)另外一个参数就是php-cgi脚本的执行时间

<value name=”request_terminate_timeout”>0s</value>这里写0s的意思是让php-cgi一直执行下去,没有时间限制。

注意:如果你做不到这一点,也就是说你的PHP-CGI可能出现某个BUG,或者你的宽带不够充足或者其他的原因导致你的PHP-CGI假死那么就建议你给 request_terminate_timeout赋一个值,这个值可以根据服务器的性能进行设定。一般来说性能越好你可以设置越高,20分钟-30分钟都可以。

修改完这两个参数,重启一下php-cgi,看是否还出现502错误

2: php执行时间长

php执行超时,修改/usr/local/php/etc/php.ini将max_execution_time改为300

重启一下php-cgi,看是否还出现502错误

3: php-cgi进程死掉

杀死其进程,重启php-cgi

阅读剩余
THE END