Nginx默认会自动忽略请求头Headers里带下划线_的参数

起因:该接口设置了必须要传送app_code和app_secret才能正常访问。实际我在本地环境测试中,发现该接口是正常访问的,但是部署到正式系统之后发现,该接口一直提示app_code和app_secret不能为空。

后续排查:发现正式系统和本地代码是一样的,但是正式系统不久前配置了nginx反向代理,由于它默认开启了自动忽略Headers带下划线的参数,所以才出现了该问题。

解决方式:
在nignx配置文件添加 underscores_in_headers on;

http {
#默认是off
underscores_in_headers on;
}

Nginx默认会自动忽略请求头Headers里带下划线_的参数_第1张图片

你可能感兴趣的:(java,nginx)