Nginx 502 bad gateway错误解决方法
时间:2014-05-26 00:07 来源:linux.it.net.cn 作者:IT网
使用Nginx作为Web服务器的时候,你或多或少都会遇到Nginx 502 bad gateway的错误,造成这种错误的原因有很多。下面我们来一一解析。
一、查看php-cgi是否在运行
有时候由于网站流量过大或者其它原因,导致php-cgi直接down掉,所以我们得看php-cgi是否在运行。执行如下命令:
1.ps -A | grep php5-cgi
如果没有运行,手动启动
1./etc/init.d/php_cgi start
如果你发现php-cgi不明原因有时候down掉,可以使用下面的脚本临时解决这个问题,添加到cronjob。
1.if ps aux | grep 'php5-cgi' | grep -v grep > /dev/null ; then
2. echo "PHP-cgi is runnning !"
3.else
4. echo "PHP-cgi is down. Starting over..."
5. /etc/init.d/php-fcgi start
6.fi
二、fastcgi进程数不够用、php执行时间长的原因
fastcgi进程数可以修改php-fpm.conf中的max_children的数值,高峰时php-cgi耗掉的最大内存为20M,请根据自己的内存情况计算了。
限制php执行时间可以在php-fpm.conf中的request_terminate_timeout设置,这是为了防止php程序的bug导致php-cgi假死。
三、FastCGI执行时间过长
根据实际情况调高以下参数值
1.fastcgi_connect_timeout 300;
2.fastcgi_send_timeout 300;
3.fastcgi_read_timeout 300;
除了上面列出的三种情况,当然还会有其它原因,但上面三种情况是最常见的了。
(责任编辑:IT)
使用Nginx作为Web服务器的时候,你或多或少都会遇到Nginx 502 bad gateway的错误,造成这种错误的原因有很多。下面我们来一一解析。 一、查看php-cgi是否在运行 有时候由于网站流量过大或者其它原因,导致php-cgi直接down掉,所以我们得看php-cgi是否在运行。执行如下命令: 1.ps -A | grep php5-cgi 如果没有运行,手动启动 1./etc/init.d/php_cgi start 如果你发现php-cgi不明原因有时候down掉,可以使用下面的脚本临时解决这个问题,添加到cronjob。 1.if ps aux | grep 'php5-cgi' | grep -v grep > /dev/null ; then 2. echo "PHP-cgi is runnning !" 3.else 4. echo "PHP-cgi is down. Starting over..." 5. /etc/init.d/php-fcgi start 6.fi 二、fastcgi进程数不够用、php执行时间长的原因 fastcgi进程数可以修改php-fpm.conf中的max_children的数值,高峰时php-cgi耗掉的最大内存为20M,请根据自己的内存情况计算了。 限制php执行时间可以在php-fpm.conf中的request_terminate_timeout设置,这是为了防止php程序的bug导致php-cgi假死。 三、FastCGI执行时间过长 根据实际情况调高以下参数值 1.fastcgi_connect_timeout 300; 2.fastcgi_send_timeout 300; 3.fastcgi_read_timeout 300; 除了上面列出的三种情况,当然还会有其它原因,但上面三种情况是最常见的了。 (责任编辑:IT) |