fly020212
- fly020212 收藏了源码分享一个Yii开发的网校系统
目录
/util ConstUtil.php /models MyModel.php
ConstUtil.php
中,namespace app\util
MyModel.php
中,use app\util\ConstUtil
, 就可以访问ConstUtil
了我安装了
advanced
模板,测试了下在
common
下 配置'user' => [ 'identityCookie' => [ 'name' => '_identity', 'path' => '/', 'domain' => '.t1.com', 'httpOnly' => true, ], ], 'session' => [ 'cookieParams' => [ 'name' => '_identity', 'path' => '/', 'domain' => '.t1.com', 'httpOnly' => true, ], ],
www.t1.com
,admin.t1.com
可以实现一同登录,一同注销,你按照我的这个配置下看看,其他的配置就不需要了,这个主要是为了让PHPSESSIONID
,和_identity
生成的cookie
都在域.t1.com
下,并且共用session
靠,你说的是前后台同步登录呀
理解错了,以为你说的是
前台登录了,后台就掉线了,后台登录了,前台就掉线了
,以为你相同的session
被覆盖了在 common 配置下 components 里面,配置下 user
'user' => [ 'identityCookie' => [ 'name' => '_identity', 'domain' => '.xxx.com', 'path' => '/', 'httpOnly' => true, ], ],
用这个把 identity cookie 的信息配置下,生成的 cookie 信息应该是
域: .xxx.com, 路径: /
测试下看 ok 不,我这边没有 advance 模板,我弄个看看
admin.xxx.com
Cookie:_csrf=24df2578924034d6abc37a9cb57fb24c11a9acd0af5f9fcc16f44c9449db1e3es%3A32%3A%22Yx6YHWOSnCUwzCZVil3bBfcqd7lCN5Q9%22%3B; ADMINSSID=0iiuv63bs5i4uta8h0m9n9qfn3;_identity=c93e0d595a75aeaa6c291cbf6bdcc6d8349ffeab8bc600d92bd88d2da1662e72s%3A14%3A%22%5B1%2C%22%22%2C2592000%5D%22%3B
www.xxx.com
Cookie:_csrf=647e40861fa53a29f7525910aee78a6a570beb6b7dc311aa829c73740345de4es%3A32%3A%22OH3kTTcEqcZGxzr7kQk3sA7SQvTw3E7w%22%3B; SITESSID=lphbtj675q5vki49jqtsci20p1
www
的站点下cookie
没有_identity
这个key
,是没有登录么?admin
和www
都登录的情况下,_identity
应该是有两个的,admin
下有一个host:admin.xxx.com, path:/
www
下有一个host:www.xxx.com,path:/
你都登录下,把
_identity
的cookie
信息都拿出来看下配置在 components 组件内的,移动到上层,肯定是错的
你在 common/config 里面配置的 session 已经生效了
www.xxx.com 的信息为 Set-Cookie:MySSID=qcdllqom6i5tts4qil9dloa5r3; path=/; HttpOnly admin.xxx.com 的信息为 MySSID=usv3k42ie9aaot7sthrg0a8qm2;
这里两个应用的
PHPSESSIONID
都已经变成了MySSID
了,但是因为在common
下面,所有www
和admin
公用了session name
,所以要单独配置在www
和admin
下,配置成不同的名字,然后在检查下生成的cookie name
有没有变化,如果有不同,但是还是无法共同登录的话,有可能就是其他原因造成的了还有,测试的时候多刷新几次,先把其他的
cookie
清理掉,在单独测试不能在 common 下配置,要在 frontend 和 backend 下分别配置,并且配置成不同的 name