yii2.0中cookie跨域访问问题 [ 2.0 版本 ]
各位高手:
本人最近在开发中遇到一个问题,就是如果我用www.test.com的域名进行用户登录的话,是可以正常登录并且生成对应的cookie,但是我页面如果改成au.test.com的时候,我也想生成一个对应的用户cookie,我的代码是这么处理的:
if(isset(Yii::$app->user->identity->username)){
if(trim(Yii::$app->user->identity->username)){
if(!Yii::$app->request->cookies->getValue('login_name')){
$cookie = new \yii\web\Cookie([
'name' => 'login_name',
'value' => Yii::$app->user->identity->username,
'expire'=>time()+ 3600 * 24 * 30,
]);
Yii::$app->getResponse()->getCookies()->add($cookie);
}
但是我用au.test.com的时候,却显示Yii::$app->user->identity->username为null,可是我之前在www.test.com已经进行用户登录了,为什么换成二级域名的时候Yii::$app->user->identity->username为null?谢谢各位的执教
共 2 个回答
-
dingjj2010 回答于 2016-10-28 09:18 举报
设置cookie的domain为test.com,那么所有test.com下的子域名都可以共享cookie。
caravel 觉得很赞 -
$cookies = Yii::$app->response->cookies; $cookies->add(new Cookie([ 'name' => 'cookie', 'domain' => 'test.com, 'value' => $val, 'expire' => time() + self::EXPIRE_TIME ]));
子域共享cookie
共 1 条回复caravel 觉得很赞
azhuwc0914
注册时间:2016-03-23
最后登录:2016-12-29
在线时长:3小时33分
最后登录:2016-12-29
在线时长:3小时33分
- 粉丝1
- 金钱15
- 威望0
- 积分45