当前位置: > Linux服务器 > nginx >

Nginx错误502 Bad Gateway的解决办法

时间:2015-01-21 23:02来源:linux.it.net.cn 作者:IT
公司网站报错:

502 Bad Gateway  /nginx/0.8.15

502 bad gateway是什么?
502 Bad Gateway 服务器作为网关或者代理时,为了完成请求访问下一个服务器,但该服务器返回了非法的应答。这个应该是网管使用了过滤软件。

可能是nginx高负载造成的!

解决:  增加了fastcgi的相应请求时间

http

  {

  ......

  fastcgi_connect_timeout 300;

  fastcgi_send_timeout 300;

  fastcgi_read_timeout 300;

  ......

  }

下面是一个网友的经验总结:
但是我在实际中碰到了这个问题,设置到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错误。

(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容