nginx报错upstream sent invalid header的解决
1.报错背景
最近由于nginx 1.20的某个漏洞需要升级到nginx1.25的版本。在测试环境升级完nginx后,发现应用直接报错502 bad gateway了。
然后查看nginx的errlog,发现:

upstream sent invalid header: "Cache\x20..." while reading response header from upstream,
报错信息显示应该是http 请求header里面有问题,"Cache\x20…"代表的是空字符串。
2.报错排查和解决问题
通过搜搜引擎和chatgpt都未找到正确的答案。后面在官网中找到这样的描述:说是在nginx1.21以后是会直接拒绝非法的请求头的。

根据这个信息排查后端代码发现,在拦截器中 HttpServletResponse的header中的“Cache-Control”参数多了个空格。将空格删除后问题解决。
到此这篇关于nginx报错upstream sent invalid header的解决的文章就介绍到这了,更多相关nginx报错upstream 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
nginx运行报错:unknown directive “stream“的解决方案
这篇文章主要给大家介绍了nginx 运行报错:unknown directive "stream"的原因,主要是因为没有安装stream模块导致的,我们只需要编译安装一下stream模块即可解决这个问题,文中有详细的解决方案,需要的朋友可以参考下2023-09-09
Nginx配置SSL证书部署HTTPS网站的方法(颁发证书)
这篇文章主要介绍了Nginx配置SSL证书部署HTTPS网站的方法(颁发证书),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-06-06


最新评论