NGINX:网站个别用户502 Bad Gateway

2022-2-10 17:05:59 [大杂烩 - PC与手机]

有会员在小荷上访问时,登录、打开列表页面等正常,但是在打开新投稿的作文页面时,出现502 Bad Gateway错误。其他人员测试又均告正常。

检查NGINX访问日志,发现日志中该访客其他页面状态是200,zwread 是502。

检查NGINX错误日志,发现日志中有[error] upstream sent too big header while reading response header from upstream,正是502的页面。

检查网站代码,该页面存在用于访问计数的COOKIE,修改代码限制COOKIE的最大长度,防止页面HEADER过大。

同时重启了NGINX。用户反映访问已经正常。

查百度,有解决是修改NGINX,增加buffer 配置。

其中http{}节里:

    client_header_buffer_size 128k;
   large_client_header_buffers 4 128k;

在原配置里已有,说明不是此问题。

另外可以在location 里加以下内容,未测试。

    proxy_buffer_size 64k;
    proxy_buffers 8 64k;
    fastcgi_buffer_size 128k;
    fastcgi_buffers 4 128k;

从建站来说,自然是优先考虑控制代码,避免大小膨胀。