cookie共享:共享同一個(gè)session cookie,服務(wù)端接受到相同的session id
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),紅塔企業(yè)網(wǎng)站建設(shè),紅塔品牌網(wǎng)站建設(shè),網(wǎng)站定制,紅塔網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,紅塔網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。session共享:共享同一個(gè)session系統(tǒng),這樣來自不同二級域的統(tǒng)一session id訪問同一會(huì)話數(shù)據(jù)
需求分析web2.0時(shí)代,富web應(yīng)用層出不窮,新公司如雨后春筍般層出不窮,有的專攻一點(diǎn),有的涵蓋廣泛,各有各的方向,各有各的理念,嗯,專攻一點(diǎn)的可以狗帶了,我們這里主要講一下涵蓋廣泛型的web服務(wù)最基本的業(yè)務(wù)整合模式:單點(diǎn)登錄
例如開源中國旗下的三個(gè)業(yè)務(wù)單元,主站,個(gè)人空間,眾包
www.oschina.net my.oschina.netzb.oschina.net
在任何一個(gè)站點(diǎn)登錄后其他站點(diǎn)都是登錄狀態(tài)
php+redis實(shí)現(xiàn)接下來我們使用php + redis來實(shí)現(xiàn)sso的二級跨域模式,如何安裝redis服務(wù)器和php的redis.so擴(kuò)展這里就不說了,請自行百度
例如我們有
www.sso.com
my.sso.com
設(shè)定session的句柄為redis服務(wù)器,session的cookie的共同的域?yàn)橐患壐赣?:‘.sso.com’
邏輯模塊,例如:
if(isset($_SESSION[\'user\'])){ echo"welcome!".$_SESSION[\'user\'].\'
\'; //這里講明下redis是如何存放session的 $redis=newRedis(); $redis->connect(\'your.redisserver.domian\',6379); //PHPREDIS_SESSION:session_id()的組合鍵為鍵名,以string類型存放在redis服務(wù)器中 $session=$redis->get(\'PHPREDIS_SESSION:\'.session_id()); var_dump($session); }else{ if(isset($_POST[\'submit\'])){ $_SESSION[\'user]=$_POST[\'user]; $_SESSION[\'password\']=$_POST[\'password\']; header("location:/"); }else{?>
以上兩個(gè)模塊分別實(shí)現(xiàn)了
session通過redis實(shí)現(xiàn)共享,session的cookie域的設(shè)置
判斷用戶是否登錄,redis如何保存session
的功能
將以上代碼放置到www.sso.commy.sso.com 上(用虛擬主機(jī)玩就可以)
在任意站點(diǎn)登錄后都可以實(shí)現(xiàn)另一站點(diǎn)的登錄
父域相同
redis端以String類型存儲(chǔ)某session_id的內(nèi)容
請勿轉(zhuǎn)載?。。。?/strong>