kn007的个人博客
♥ You are here: Home > 软件与网络 > VPS > 记录:Nginx因为FastCGI导致的HTTP 502

记录:Nginx因为FastCGI导致的HTTP 502

by | 30 Comments

提醒:本文最后更新于 2858 天前,文中所描述的信息可能已发生改变,请仔细核实。

e5e5280bc00ab
前段时间,有个页面出现了502,查看了所有相关程序的日志都没报错。。。

感觉十分之莫名其妙,因为这个页面一直是正常的,突然间也就不行了。。。

在shell下,测试了页面的PHP脚本没问题,那就是Nginx问题了,想起Nginx的日志等级是crit。

设置日志等级成error,问题出现了:

[error] upstream prematurely closed FastCGI stdout while reading response header from upstream

检查了页面,发现页面大小比较大,试图减少一半输出,立即200正常。遂将nginx.conf中的fastcgi_buffers_sizefastcgi_buffers做了更改。

目前为最大1056K,应该是没问题了,以前是最大272K:

fastcgi_buffer_size 32k;
fastcgi_buffers 32 32k;

建议缓冲区块数和大小相等,会更合理。

一般来说,其实以16 16K就足够了,另外数值可以被4k可除会好些,因为一般PAGESIZE默认是4096。每个人都有自己的实际情况,请不要照搬。

转载请注明转自:kn007的个人博客的《记录:Nginx因为FastCGI导致的HTTP 502

donate
有所帮助?

Comments

30 Comments立即评论
  1. LV1回复

    不知道是你主机原因还是我网络原因,我这打开你的站经常丢失CSS样式……

    1. MOD回复

      @锋子: 静态文件是在又拍云。

  2. 回复

    确实这个配置的注意一下,页面小没发现。

    1. MOD回复

      @vfhky: 兄弟好域名!

    2. 回复

      @kn007: 有点长。。

    3. MOD回复

      @vfhky: ...如果嫌弃可以送给我,哈哈哈哈哈哈 :mrgreen:

    4. 回复

      @kn007: 得先找个简短一点的 :cool:

  3. LV2回复

    我也遇到过这样的问题。

    1. MOD回复

      @小王涛: 502一般只在nginx见到

icon_wink.gificon_neutral.gificon_mad.gificon_twisted.gificon_smile.gificon_eek.gificon_sad.gificon_rolleyes.gificon_razz.gificon_redface.gificon_surprised.gificon_mrgreen.gificon_lol.gificon_idea.gificon_biggrin.gificon_evil.gificon_cry.gificon_cool.gificon_arrow.gificon_confused.gificon_question.gificon_exclaim.gif