YII框架多子域名同步登录问题

YII的资料实在是太少了。为了让后来者减少摸索时间,我写下我的解决方法。

 

a.meylou.com和b.meylou.com不做登录。c.meylou.com这个专门做用户登录。c站登录之后a,b站点同时登录。

 

第一步:修改php.ini配置文件,把cookie_domain=改成“cookie_domain=meylou.com” 

第二部:修改各个站点的config 文件:components节点->user节点->加上'stateKeyPrefix'=>'你的前缀',最后大概是这样的:

'components'=> array(
    'user' =>  array(
    'allowAutoLogin' =>  true,
    'stateKeyPrefix'=>'yourfix',
    ),

) 

第三部: 修改各个站点的config 文件:components节点加上statePersister节点,最后大概是这样的:

 'components'=>array(

    'statePersister'=> array(
        'class'=>'system.base.CStatePersister',
        'stateFile'=>'/protected/runtime/state.bin',
    ),
),

 OK了。解释下:

第一步,确保PHPSESSIDn能在各个二级域名下通用。这样SESSION就能共享了!

第二部,确保每个站点验证登录信息的时候用同样的前缀。

第三部,YII验证有一个state.bin保存了HASH,他要读取这个,把state.bin共用就好了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值