两个SpringSecurity本地项目登录冲突问题

问题产生
因为最近要做资源认证服务器,就搞了两个集成SpringSecurity的项目,在开启了loginPage("/portal/login")后,登录的时候发现了一个问题:8085端口的项目A和8080端口的项目B不可以同时登录,A登录了,B再登录就会把A的登录状态刷新掉。

问题原因
经过一番研究,原因是session会在浏览器保存一个cookie用来识别session,看上去没什么问题,但是cookie是不区分端口号的,在同一个ip下cookie是共享的。
也就是说,我们本地项目都是localhost,域名相同,端口号不同。但他们都会共享一个cookie,导致两个项目登录所用的cookie会互相覆盖。

解决方案
我们可以在hosts文件配置不同的域名,通过不同的域名来访问我们的本地项目。如:

127.0.0.1    www.qbq.com
127.0.0.1    www.aaa.com

1
2
我们可以分别访问www.qbq.com:8085,www.aaa.com:8080。这样他们的cookie就不会发生冲突了
————————————————
版权声明:本文为CSDN博主「狂徒全」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/a624193873/article/details/106417085

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章