提醒:本文最后更新于 2953 天前,文中所描述的信息可能已发生改变,请仔细核实。
前段时间,有个页面出现了502,查看了所有相关程序的日志都没报错。。。
感觉十分之莫名其妙,因为这个页面一直是正常的,突然间也就不行了。。。
在shell下,测试了页面的PHP脚本没问题,那就是Nginx问题了,想起Nginx的日志等级是crit。
设置日志等级成error,问题出现了:
[error] upstream prematurely closed FastCGI stdout while reading response header from upstream
检查了页面,发现页面大小比较大,试图减少一半输出,立即200正常。遂将nginx.conf中的fastcgi_buffers_size
和fastcgi_buffers
做了更改。
目前为最大1056K,应该是没问题了,以前是最大272K:
fastcgi_buffer_size 32k;
fastcgi_buffers 32 32k;
建议缓冲区块数和大小相等,会更合理。
一般来说,其实以16 16K就足够了,另外数值可以被4k可除会好些,因为一般PAGESIZE默认是4096。每个人都有自己的实际情况,请不要照搬。
转载请注明转自:kn007的个人博客的《记录:Nginx因为FastCGI导致的HTTP 502》
难得这两天这么勤快的更新 哈哈

@World: 故意的。特意存起来定时今天发
@老杨: 我也是!
@Meekdai:
囧
@老杨: 额。。
还没折腾到这个地方。。
mark
@公子: 额,好久不见
和QQ留言一样的评论,帅的人早就开始用Apache
@雨帆: 你明明在QQ不是这样留言的!!!
亲,本博客明天上午10:00可以免费拿礼品和红包额,如果感兴趣的话,准时来抢额........
@小Z: 好的,纯支持
只能路过的文章
@郑永: 谦虚了
路过
@满满都是爱|天长地久:
@Xider: 不是,那个页面那么小。。。所有评论那张页都比它大多了,另有别的导致的,
博主的技术不错啊啊。。。
技术文,不明觉历。
@wu先生: 过赞