nginx 反向代理 502 错误的解决

Nginx反向代理----502报错
问题描述:通过nginx反向代理地址之后报错502,后台日志报错信息为(upstream sent too big header while reading response header from upstream)
问题原因:nginx中proxy_buffer_size默认值是4k,第三方地址响应头超过了此长度,Nginx报upstream sent too big header错误,然后client收到的是502。
解决方案:在http字段中增加以下三个参数
proxy_buffer_size 128k;
作用:Nginx使用该大小申请read_buf(读取数组长度),即大小指定了 upstream header 最大长度,如果响应头超过了这个长度,Nginx会报upstream sent too big header错误,然后client收到的是502。
proxy_buffers   32 32k;
 作用:设置存储被代理服务器响应的body所占用的buffer个数和每个buffer大小。
#   proxy_busy_buffers_size 64k;
 作用:proxy_busy_buffers_size不是独立的空间,他是proxy_buffers和proxy_buffer_size的一部分。
    nginx会在没有完全读完后端响应就开始向客户端传送数据,所以它会划出一部分busy状态的buffer来专门向客户端传送数据(建议为proxy_buffers中单个缓冲区的2倍),然后它继续从后端取数据。
    proxy_busy_buffer_size参数用来设置处于busy状态的buffer有多大。
————————————————
版权声明:本文为CSDN博主「运维白菜鹏」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42207486/article/details/103143083

猜你喜欢

转载自blog.csdn.net/lengyue1084/article/details/106397480
今日推荐