本文主要是对“关于Yii2如何实现跨域的SSO登陆的解析”的改进,因为在那篇文章中我已经写出了SSO登陆的基本实现过程,现在是进一步优化。主要优化的部分有两点:一、在www.XXX.com登陆状态的页面地址栏上输入login.XXX.com的时候回到登陆页面,但并不退出登陆,再输入www.XXX.com的时候,让它又回到了www.XXX.com页面并保持登陆的状态;二、修改session的过期时间,设置到极大值。
工具/原料
1
有两个以上二级域名相同的域名
2
配两个以上的服务器
方法/步骤
2
代码分析1、对login模块SiteController.php的Login方法修改1.1、修改前代码
3
1.2、修改后代码
4
2、修改session的过期时间,设置到极大值。commonconfigmain.php2.1、修改前代码
5
2.2、修改后代码
6
常见问题1、虽然session的过期时间已经设置了极大值,登陆成功cookie也有值了,但是登陆后大约过两个小时左右还是会退出登陆,为何会这样?Yii2如何实现真正的永久登陆,还请大牛们解答,后续要是我解决了也会继续更新,一同进步。
7
全文完,如有不足或者更好的方式方法,欢迎大家踊跃提出,我们一起相互交流学习。