hao32的个人日志

nginx 502 Bad Gateway 的一种解决方法(转载)

本文系转载,值得参考一读:
原文地址:http://blog.nowans.com/content/log.2008.10.29.229.html
作者: bugx

昨天装上nginx后在高负载的时候,论坛上传图片或者执行较长时间脚本的时候就不停的出现502 Bad Gateway ,网上搜了,大多数都是张大师的那篇解决方案,他的解决方案是

http
{
……
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
……
}


增加了fastcgi的相应请求时间。但是我在实际中碰到了这个问题,设置到500,还是会出现,只是比我设置120的时候要少一些。后来发现主要是在一些post或者数据库操作的时候出现这种情况,静态页面是不会出现的。

反复的查问题,调试,也加大了CGI的进程数。

128

256再加上去可能会变得很慢。占用内存大了。

在php-fpm.conf设置中还有一项,可能当时没注意到,无意中改了这个值。

request_terminate_timeout

这个值是max_execution_time,就是fast-cgi的执行脚本时间。

0s

0s为关闭,就是无限执行下去。(当时装的时候没仔细看就改了一个数字)

发现,问题解决了,执行很长时间也不会出错了。

优化fastcgi中,还可以改改这个值5s 。看看效果

终于发现502的错误其实不是nginx的问题,哈哈

php-cgi进程数不够用、php执行时间长、或者是php-cgi进程死掉,都会出现502错误

4 评论

  1. 同样是nginx中的502错误,你这个方法试过不行,,,

  2. 淘宝网皇冠店铺

    今天 落伍出现这样子的状况了

  3. 这个问题很重要吗

  4. 发了这个日志 表示我可以去吃饭了

2 引用通告

  1. nginx 502 Bad Gateway 的一种解决方法(转载) – hao32的个人日志 « We's Home
  2. nginx 502 Bad Gateway 的一种解决方法(转载) – hao32的个人日志 | We's Blog

发表回复