在服务器做端口监听与转发,访问时出现 504 Gateway Time-out,也就是我们常说的504 网关超时。
一般看来, 这种情况可能是由于nginx默认的fastcgi进程响应的缓冲区太小造成的, 这将导致fastcgi进程被挂起, 如果你的fastcgi服务对这个挂起处理的不好, 那么最后就极有可能导致504 Gateway Time-out
现在的网站, 尤其某些论坛有大量的回复和很多内容的, 一个页面甚至有几百K
默认的fastcgi进程响应的缓冲区是8K, 我们可以设置大点
在nginx.conf里, 加入fastcgi_buffers:
这表示设置fastcgi缓冲区为8×128k
当然如果您在进行某一项即时的操作, 可能需要nginx的超时参数调大点, 例如设置成60秒:
http:{
...
...
#表示设置fastcgi缓冲区为8×128k
fastcgi_buffers 8 128k;
#超时参数设置成60s
send_timeout 60;
...
...
}
只要调整了这两个参数, 结果就是没有再显示那个超时, 可以说效果不错, 但是也可能是由于其他的原因,期待有更多的发现。