目前流行的 token 登录验证,常在 http 的 header 中添加 token 参数。
在部署项目后,发现无法获取到 http 头,拿不到 token 值,而通过ip端口直接访问则可以正确获取,怀疑是 Nginx 代理问题,查找原因后得知。
Nginx 会默认忽略含有 “_” 的 header 参数,而 token 值的参数名恰好含有 “_” 符号,需要手动开启转发。
具体修改:
在 nginx.conf 中,修改 http 内容,添加一行
underscores_in_headers on;
例:
http {
underscores_in_headers on;
server {
listen 80;
}
}
重启 Nginx 后可以正常获取 token
发表评论
沙发空缺中,还不快抢~