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有多大。
文章标题:nginx 反向代理 502 错误的解决
文章链接:https://p1e.cn/html/2939.html
更新时间:2021年05月04日
本站大部分内容均收集于网络!若内容若侵犯到您的权益,请发送邮件至:815494#qq.com我们将第一时间处理! 资源所需价格并非资源售卖价格,是收集、整理、编辑详情以及本站运营的适当补贴,并且本站不提供任何免费技术支持。 所有资源仅限于参考和学习,版权归原作者所有。