背景:前端與后端調試接口,后端拿不到前段發過去的請求頭信息,導致接口不通。(但是在本地是可以拿到的)
原因:nginx做了反向代理,沒有請求時候加頭信息的配置
報錯如下:
解決方法:
方法一:NGINX代理時加上請求頭信息:
location /
{
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.18.72/mkh5;
}
由於前端代碼request的header中包含_,所以這個配置沒有生效
方法二:從根本解除nginx的限制,nginx默認request的header的那么中包含’_’時,會自動忽略掉。http部分中添加如下配置:underscores_in_headers on; (默認 underscores_in_headers 為off)