Nginx代理导致header参数丢失和端口丢失
问题
今天测试同事在测试接口时遇到了测试环境无法获取到header中参数的问题,但是本地可以。
分析
经过反复查看配置,发现是Nginx引起的。
Nginx做反向代理时默认request的header的那么中包含 _ 时(target_url),会自动忽略掉。而接口的header刚好包含_。
解决方案
修改Nginx配置文件 nginx.conf
在http部分中添加如下配置:underscores_in_headers on; (默认 underscores_in_headers 为off)
1.
即可解决header参数丢失问题。