Nginx不支持HTTP请求头中包含下划线_的解决办法
一、项目背景
在生产环境中,我们自定义的请求头总是获取不到,于是经过多次排查原因,发现nginx不支持带下划线的请求头。
二、解决
1、在nginx配置文件中加上配置项: 找到
http
部分,并添加underscores_in_headers on;
配置项。这将允许NGINX识别和转发包含下划线的HTTP请求头。例如:
http {
underscores_in_headers on;
...
}
2、避免在请求头中使用下划线:可以改用驼峰命名法或其他符号(如减号
-
)代替下划线。例如,将WX_OPENID
改为WX-OPENID
。
以上两种方法可以解决nginx作为反向代理时不支持HTTP请求头中包含下划线的问题。