nginx 部署java项目,登录成功后报token超时

原因,token字段带有下划线,nginx过滤掉了带有下划线的字段,导致实际token没有发送到后端
后端服务报错,token无效,需要重新登录。

  nginx对header name的字符做了限制,默认 underscores_in_headers 为off,表示如果header name中包含下划线,则忽略掉,部署后就获取不到。

  解决:

 1. nginx默认忽略掉下划线可能有些原因考虑的。在header里不要用 “_” ,可以用驼峰命名或者其他的符号(如减号-)代替。
 2. 在nginx里的 nginx.conf文件中配置http的部分添加 : underscores_in_headers on;(默认值是off,或者没有写这行代码)

 

posted @ 2022-02-21 17:05  啦啦拉扎尔  阅读(656)  评论(0编辑  收藏  举报