session 在二级域名下共享资源 [ 2.0 版本 ]
正常情况下 当前域名下的session只能在当前域名使用 如果将当前页面的 Yii::session->set('xxx','aaa')
跳转到其他域名的页面 就算获取 Yii::session['xxx']
也是空 因为session_id
已经变了
一般网站都会将个人中心passport独立出来 所以登录的状态是不能少的
当你在主站登录 跳转到个人中心登录 这样就跨域操作了 session的状态就无法维持了
本教程使用的是redis的方式来实现session共享
第一步引用redis
'redis' => [
'class' => 'yii\redis\Connection',
'hostname' => '45.78.6.193',
'port' => 6379,
'database' => 0,
],
第二步 每个项目下main components加入
'session' => [
'class' => 'yii\redis\Session',
'cookieParams' => [
'domain' => $params['cookieDomain'] ,
'lifetime' => $params['sessionLifetime'] ,
'httponly' => true,
],
]
其中的 domain 是你域名后缀 比如你主站是 www.jay.com
个人中心是passprot.jay.com
domain就是.jay.com
ok 这样你主站上面定义一个session 二级域名下就能获取主站的session了
jayrui612
注册时间:2017-03-24
最后登录:2019-05-27
在线时长:42小时30分
最后登录:2019-05-27
在线时长:42小时30分
- 粉丝12
- 金钱3845
- 威望170
- 积分5965
共 0 条评论