xjdata
貌似session记录的只有用户ID,所以需要查询。呃。。。我好想明白了。yii要求Memcache 、APC的用途了。
- xjdata 2015-02-05 已签到连续签到1天,获得了5个金钱
fly,太感谢了。问题解决。 十分感谢你的耐心。
fly,你好。现在2个应用的 cookie中的_identity 是一样了。PHPSESSID不一样。如下:(yii.com是我本地hosts劫持的。)
应用admin中的信息 admin.yii.comCookie:_csrf=a67db463b265429314759d63a9549834d5e2df14e9dbc3bbff45e0e2a035f5ebs%3A32%3A%22Fiv7oCmMR9PxDgXv1J-pUfy83f04rEoa%22%3B; _identity=5cebb6f1abb9446046103683615dca2486a6dbb7ea9fca32edf451b8e40c131ds%3A14%3A%22%5B1%2C%22%22%2C2592000%5D%22%3B; PHPSESSID=r8b4ssig5fo0k68jj94pk0c2e5
Set-Cookie:_identity=5cebb6f1abb9446046103683615dca2486a6dbb7ea9fca32edf451b8e40c131ds%3A14%3A%22%5B1%2C%22%22%2C2592000%5D%22%3B; expires=Fri, 27-Feb-2015 07:04:20 GMT; Max-Age=2592000; path=/; domain=.yii.com; httponly
应用www的cookie www.yii.com
但是依然不能同步登录,比如上方。admin.yii.com是我登录的。 然后我刷新www.yii.com还是未登录状态
fly 你好。
我chrome39 清理了所有的缓存。
然后配置文件 全部放在各应用下的config/main.php下面了。
配置方法为 设置了 components 组件中的 session 数组
www/config/main.php'class' => 'yii\web\Session', 'name' => 'SITESSID', admin/config/main.php 'class' => 'yii\web\Session', 'name' => 'ADMINSSID',
现在,已经可以实现各应用的session name 为配置内容。并且2个应用的session也不一样。
Cookie:_csrf=24df2578924034d6abc37a9cb57fb24c11a9acd0af5f9fcc16f44c9449db1e3es%3A32%3A%22Yx6YHWOSnCUwzCZVil3bBfcqd7lCN5Q9%22%3B; **ADMINSSID=0iiuv63bs5i4uta8h0m9n9qfn3**; _identity=c93e0d595a75aeaa6c291cbf6bdcc6d8349ffeab8bc600d92bd88d2da1662e72s%3A14%3A%22%5B1%2C%22%22%2C2592000%5D%22%3B Cookie:_csrf=647e40861fa53a29f7525910aee78a6a570beb6b7dc311aa829c73740345de4es%3A32%3A%22OH3kTTcEqcZGxzr7kQk3sA7SQvTw3E7w%22%3B; **SITESSID=lphbtj675q5vki49jqtsci20p1**
其中ADMINSSID的站点已经登录 但是 SITESSID的站点还是显示未登录。
不知道哪里设置的不对,依然不能实现2个应用同步登录退出,如果可以,还请继续指导下。谢谢。
折腾2天了,是不是我的思路不对,yii2不支持这种方式,因为毕竟是不同的子域名。比如为了防止跨站攻击等,yii是不容许这样进行用户身份管理的? 或者在不同子域名之间实现身份认证的同步有其他的方案?多谢了。- xjdata 2015-01-28 已签到连续签到1天,获得了5个金钱
当然这个是说 设置了只读的属性。
我想问的问题是 到底应该怎么设置 各应用之间的登录信息才会同步呢?请问。 配置了 www admin 2个应用的 config/main.php 文件 配置内容为
'session' => [ 'class' => 'yii\web\Session', 'name' => 'SITESSID', ], 'session' => [ 'class' => 'yii\web\Session', 'name' => 'ADMINSSID', ],
依然不行。
然后我将配置移动到上一层数组。
'params' => $params, 'session' => [ 'class' => 'yii\web\Session', 'name' => 'SITESSID', ],
yii直接报错
Invalid Call – yii\base\InvalidCallException Setting read-only property: yii\web\Application::session
还请解答一下原因,谢谢了。