多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
> 跨域共享,主要是修改cookie和session的domain,设置为“**主域**”,即可达到目的。 > 修改/common/config/main.php 1. 在config头部上加上以下代码 ~~~ //Session 跨域 $host = explode('.', $_SERVER["HTTP_HOST"]); if (count($host) > 2) { define('DOMAIN', $host[1] . '.' . $host[2]); } else { define('DOMAIN', $host[0] . '.' . $host[1]); } ~~~ 2. 在config的components配置中加入 ~~~ 'user' => [ 'identityClass' => 'common\models\User', 'enableAutoLogin' => true, 'identityCookie' => ['name' => '_identity', 'httpOnly' => true,'domain' => '.'.DOMAIN], ], 'session' => [ 'cookieParams' => ['domain' => '.'.DOMAIN, 'lifetime' => 0], 'timeout' => 3600, ], ~~~ 3. controller中使用 ~~~ //设置 Yii::$app->session['var']='value'; //使用 echo Yii::$app->session['var']; //移除 unset(Yii::$app->session['var']); ~~~ 这样单点登陆基本实现, 从login.xxx.com 登陆后, 去到www.xxx.com session 依然有效果。