Yii2實(shí)現(xiàn)多域名跨域同步登錄退出
在平臺(tái)開發(fā)過程中,項(xiàng)目分為前臺(tái)(frontend)www.xxx.com和后臺(tái)(backend) yun.xxx.com兩部分,綁定兩個(gè)域名, 我們知道在沒有綁定域名的時(shí)候前后臺(tái)可以同步登錄和退出,但是綁定域名后就失效了,原因是session的作用域不同了。 兩個(gè)域名的session作用域都只限制在了自己的域名上,我們的解決辦法是將不同二級(jí)域名的作用域都改成頂級(jí)域名xxx.com。
在common/config/main.PHP里面增加如下代碼:
//跨域session域名配置,獲取當(dāng)前主機(jī)名 $host_array = explode('.', $_SERVER["HTTP_HOST"]); //針對(duì)com域名,獲取頂級(jí)域名 if (count($host_array) == 3) { define('DOMAIN', $host_array[1] . '.' . $host_array[2]); } //針對(duì)com.cn域名 elseif (count($host_array) == 4) { define('DOMAIN', $host_array[1] . '.' . $host_array[2]. '.' . $host_array[3]); } else{ //echo "本系統(tǒng)不支持本地訪問,請配置域名";exit; } define('DOMAIN_HOME', 'www.' . DOMAIN); define('DOMAIN_YUN', 'yun.' . DOMAIN); define('DOMAIN_API', 'api.' . DOMAIN); define('DOMAIN_EMAIL', 'mail.' . DOMAIN); define('DOMAIN_IMG', 'img.' . DOMAIN);
修改components部分,改變session作用域
'user' => [ 'identityClass' => 'common\models\User', 'enableAutoLogin' => true, 'identityCookie' => ['name' => '_identity', 'httpOnly' => true, 'domain' => '.' . DOMAIN], ], 'session' => [ 'cookieParams' => ['domain' => '.' . DOMAIN, 'lifetime' => 0], 'timeout' => 3600, ],
通過上述配置后,多個(gè)二級(jí)域名間就可以實(shí)現(xiàn)同步登錄和退出了。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Yii2.0框架模型添加/修改/刪除數(shù)據(jù)操作示例
- Yii2.0框架模型多表關(guān)聯(lián)查詢示例
- yii2.0框架使用 beforeAction 防非法登陸的方法分析
- Yii2框架實(shí)現(xiàn)登陸添加驗(yàn)證碼功能示例
- Yii2中組件的注冊與創(chuàng)建方法
- Yii2框架實(shí)現(xiàn)注冊和登錄教程
- Yii2 中實(shí)現(xiàn)單點(diǎn)登錄的方法
- Yii2框架實(shí)現(xiàn)登錄、退出及自動(dòng)登錄功能的方法詳解
- 修改yii2.0用戶登錄使用的user表為其它的表實(shí)現(xiàn)方法(推薦)
- YII2自動(dòng)登錄Cookie總是失效的解決方法
- Yii2中OAuth擴(kuò)展及QQ互聯(lián)登錄實(shí)現(xiàn)方法
- YII2框架中自定義用戶認(rèn)證模型,完成登陸和注冊操作示例
相關(guān)文章
變量在 PHP7 內(nèi)部的實(shí)現(xiàn)(二)
在上篇文章給大家介紹了變量在 PHP7 內(nèi)部的實(shí)現(xiàn)(一),本篇繼續(xù)給大家介紹php7內(nèi)部實(shí)現(xiàn)相關(guān)知識(shí),感興趣的朋友通過本篇文章一起學(xué)習(xí)吧2015-12-12php array_reverse 以相反的順序返回?cái)?shù)組實(shí)例代碼
本篇文章主要介紹了php array_reverse 以相反的順序返回?cái)?shù)組實(shí)例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下。2017-04-04詳解php中serialize()和unserialize()函數(shù)
這篇文章主要介紹了php的serialize()函數(shù)和unserialize()函數(shù)的相關(guān)資料,需要的朋友可以參考下2017-07-07php輸出1000以內(nèi)質(zhì)數(shù)(素?cái)?shù))示例
這篇文章主要介紹了php輸出1000以內(nèi)質(zhì)數(shù)的示例,需要的朋友可以參考下2014-02-02