欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

php出現(xiàn)web系統(tǒng)多域名登錄失敗的解決方法

 更新時(shí)間:2014年09月30日 10:13:05   投稿:shichen2014  
這篇文章主要介紹了php出現(xiàn)web系統(tǒng)多域名登錄失敗的解決方法,針對(duì)同一頂級(jí)域名下的各子站出現(xiàn)登錄失敗的情況非常有用,需要的朋友可以參考下

本文實(shí)例講述了php出現(xiàn)web系統(tǒng)多域名登錄失敗的解決方法,分享給大家供大家參考。具體分析如下:

下面只是簡(jiǎn)單的邏輯結(jié)構(gòu),對(duì)于正式的系統(tǒng)需要做具體的處理。

這里需要注意的是:加解密一定需要做安全驗(yàn)證。但是這個(gè)方法也不夠完美,兩個(gè)站點(diǎn)必須有相同一級(jí)域名;另外這種完全基于cookie的方式,安全性不夠高

function login()
{
  $info = callloginserver(); //訪問(wèn)登錄服務(wù)器
  if(!empty($info))  //登錄成功了
}
//用戶(hù)沒(méi)有登錄,則在本系統(tǒng)中登錄并調(diào)用登錄服務(wù)器接口
function login()  //正常的登錄
{
  .......//驗(yàn)證用戶(hù)的合法性
  $_session['uid'] = $user_id;
  setcookie('sign', encrypt($pass9), '', '/', 'the.com');
}

先檢查用戶(hù)是否在登錄系統(tǒng)中登錄

funtion sign()
{
 $sign = $_cookie['sign'];
 if(!empty($sign))
 {
   $sign = decrypt($sign);
  ..........///登錄成功
 }
}

用戶(hù)沒(méi)有登錄,則在本系統(tǒng)中登錄并調(diào)用登錄服務(wù)器接口

function loging() //本系統(tǒng)登錄
{ 
 .....//登錄成功
 callseverlogin();//通知用戶(hù)登錄
}

所有的站點(diǎn)共享一個(gè)登錄系統(tǒng);當(dāng)用戶(hù)在其中的一個(gè)站點(diǎn)登錄成功時(shí), 該系統(tǒng)調(diào)用其他站點(diǎn)的登錄接口,完成用戶(hù)在其他站點(diǎn)的登錄,同時(shí)設(shè)置相應(yīng)的登錄信息;或者在用戶(hù)登錄時(shí),只在該系統(tǒng)保存用戶(hù)登錄信息,當(dāng)用戶(hù)在其他站點(diǎn)登錄時(shí),必須請(qǐng)求該系統(tǒng)接口,獲取用戶(hù)是否登錄的信息。前一種方式的缺點(diǎn)是:不管用戶(hù)有沒(méi)有使用其他站點(diǎn),那些站點(diǎn)都需要保存用戶(hù)狀態(tài);后一種方式就把所有的壓力都轉(zhuǎn)移到登錄系統(tǒng)上面來(lái)。而如果要實(shí)現(xiàn)用戶(hù)退出的統(tǒng)一操作,就需要站點(diǎn)調(diào)用登錄系統(tǒng)的退出接口,然后登錄系統(tǒng)接口調(diào)用其他站點(diǎn)的退出接口;或者設(shè)置一個(gè)標(biāo)記,如果這個(gè)標(biāo)記不存在則標(biāo)示用戶(hù)退出,此時(shí)只要把該標(biāo)示清空即可,其他站點(diǎn)發(fā)現(xiàn)該標(biāo)示不存在就知道用戶(hù)已經(jīng)退出系統(tǒng)。

這種處理方式需要在登錄系統(tǒng)和個(gè)站點(diǎn)之間規(guī)定登錄接口,和注銷(xiāo)接口。通過(guò)這些接口,各站點(diǎn)可以很方便的處理用戶(hù)登錄或退出。

希望本文所述對(duì)大家的PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論