tomcat server.xml文件cookie设置常见
问题描述:同一台服务器下面,部署了两个tomcat服务,或者代理后两个相同域名端口不通的服务。第一个服务登陆后设置了cookie,如果是用同一个浏览器打开,则第二个服务登录重新设置了cookie,在回到第一个服务随便点击发现重定向到了登录页。原因:我们一般设置的接口的权限,通过前端设置cookie,对应上后端的session,校验是否已经登录从而实现接口监听的放行。在同一个域名下,如果tomcat
问题描述:同一台服务器下面,部署了两个tomcat服务,或者代理后两个相同域名端口不通的服务。第一个服务登陆后设置了cookie,如果是用同一个浏览器打开,则第二个服务登录重新设置了cookie,在回到第一个服务随便点击发现重定向到了登录页。
原因:
我们一般设置的接口的权限,通过前端设置cookie,对应上后端的session,校验是否已经登录从而实现接口监听的放行。在同一个域名下,如果tomcat是默认设置,会在前端生成相同cookie名称为JSESSIONID的内容,如果同一个域名下的第二个服务也在当前浏览器进行了登录,则会覆盖之前的JSESSIONID的内容,因此第一个服务再次访问系统接口用了服务2的内容,则会检验到没有登录,从而定向到登录页。
解决方法:
修改tomcat的server.xml文件设置cookiename即可。如左侧为之前的配置,右侧为修改名称后的配置,则第二个服务登录后cookie的名称是JSESSIONIDocv,而非JSESSION,从而两个服务互不影响。
扩展:
虽然此问题在部分服务中存在相互影响,但如果是相关服务实现同cookie确是一个比较好的方式,可参考:
https://blog.csdn.net/yinyuehepijiu/article/details/50409570
学海无涯苦作舟!!!!
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)