正在播放:实现跨站自动登录之共享用户体系
更新时间:1年前
Laravel 跨站登录
标 题 | 时 间 |
---|---|
跨站自动登录的基本准备工作 | 04:54 |
实现跨站自动登录之共享用户体系 | 03:56 |
跨站自动登录之共享session | 05:04 |
跨站自动登录之 cookie&session 终极统一 | 05:07 |

anyouzy 2020-07-19 20:45:22
看了视频,自己动手实践了一下,真心心累。发现以下几点与君共享: 1. 子站可以不用执行migrate命令生成一些数据表,因为共享主站的用户系统。 2. 如果要修改登录的逻辑判断,可以在LoginController中增加credentials方法,比如除了用户名和密码正确,我还需要验证用户表的is_active字段值为‘yes’,主站和子站都需要加: public function credentials(Request $request) { $credentials = $request->only($this->username(), 'password'); $credentials['is_active'] = 'yes'; return $credentials; } 2. 重置密码要想生效,记得在子站auth.php中password数组配置中增加一个connection=>'主站数据库连接',目的是去操作主站的password_reset。 3. 如果使用redis作为session驱动,主站和子站的app_key和app_name都要保持一致,否则redis会生成两份session数据。

codinget 2020-07-19 23:27:11
哈哈哈,这不是解决了吗,解决了之后你就发现没啥难的,就那么几句代码就得了,只是探索的时候肯定花一些时间和精力,但是是值得的

anyouzy 2020-07-20 00:50:53
汗。。。确实是这样子,不过这下对于同域名下的跨站登录了解清楚了。顺便再补充一点: 4. 使用redis作为session存储介质的时候,主站和子站需要注意redis key的前缀问题。两者需要保持一致,可选择直接把各个站点cofig/database.php中redis配置项prefix注释掉。 网站主,空了能录制个php或者laravel的单点登录方案不,不仅仅是同域。目前这块好像没有很成熟的解决方案。
暂无相关资源