同一服务器不同应用cookie互相影响问题

问题:

        系统A、系统B有登录拦截,部署在同一服务器域名相同,系统A在登录的情况下,如果在打开一个页面登录系统B,再次回到系统A访问时,会跳转到登录页重新登录,导致系统A与系统B不能同时登录,系统A已登录,系统B登录时会带上系统A产生的cookie,登录请求返回后,此时cookie中的值就变成了系统B创建的session对象,也就是系统A产生的cookie值被覆盖,系统A再次发送请求,会拿着系统B产生的cookie的值去系统A中找是否有session对象,由于找不到session对象,服务器又给A重新创建了一个新的session对象,所以系统A会重新登录。

方案:

        由于两个应用没有设置cookie的名称,因此session的值都会保存在默认名JSESSION中,这也是导致两个应用cookie的JSESSION互相覆盖的原因,因此给两个应用分别设置cookie的name就解决了这个问题了,设置name在springboot中通过server.session.cookie.name进行设置。

Ruoyi若依分离版自定义cookie名称

        同域名下两个项目的登录状态互相影响。

        不分离版:在 ShiroConfig 里更改cookie名称。

        分离版:在 ruoyi-ui/src/utils/auth.js 修改TokenKey的值。

转载请注明出处:BestEternity亲笔。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值