php出現(xiàn)web系統(tǒng)多域名登錄失敗的解決方法
本文實例講述了php出現(xiàn)web系統(tǒng)多域名登錄失敗的解決方法,分享給大家供大家參考。具體分析如下:
下面只是簡單的邏輯結構,對于正式的系統(tǒng)需要做具體的處理。
這里需要注意的是:加解密一定需要做安全驗證。但是這個方法也不夠完美,兩個站點必須有相同一級域名;另外這種完全基于cookie的方式,安全性不夠高
function login()
{
$info = callloginserver(); //訪問登錄服務器
if(!empty($info)) //登錄成功了
}
//用戶沒有登錄,則在本系統(tǒng)中登錄并調用登錄服務器接口
function login() //正常的登錄
{
.......//驗證用戶的合法性
$_session['uid'] = $user_id;
setcookie('sign', encrypt($pass9), '', '/', 'the.com');
}
先檢查用戶是否在登錄系統(tǒng)中登錄
funtion sign()
{
$sign = $_cookie['sign'];
if(!empty($sign))
{
$sign = decrypt($sign);
..........///登錄成功
}
}
用戶沒有登錄,則在本系統(tǒng)中登錄并調用登錄服務器接口
function loging() //本系統(tǒng)登錄
{
.....//登錄成功
callseverlogin();//通知用戶登錄
}
所有的站點共享一個登錄系統(tǒng);當用戶在其中的一個站點登錄成功時, 該系統(tǒng)調用其他站點的登錄接口,完成用戶在其他站點的登錄,同時設置相應的登錄信息;或者在用戶登錄時,只在該系統(tǒng)保存用戶登錄信息,當用戶在其他站點登錄時,必須請求該系統(tǒng)接口,獲取用戶是否登錄的信息。前一種方式的缺點是:不管用戶有沒有使用其他站點,那些站點都需要保存用戶狀態(tài);后一種方式就把所有的壓力都轉移到登錄系統(tǒng)上面來。而如果要實現(xiàn)用戶退出的統(tǒng)一操作,就需要站點調用登錄系統(tǒng)的退出接口,然后登錄系統(tǒng)接口調用其他站點的退出接口;或者設置一個標記,如果這個標記不存在則標示用戶退出,此時只要把該標示清空即可,其他站點發(fā)現(xiàn)該標示不存在就知道用戶已經退出系統(tǒng)。
這種處理方式需要在登錄系統(tǒng)和個站點之間規(guī)定登錄接口,和注銷接口。通過這些接口,各站點可以很方便的處理用戶登錄或退出。
希望本文所述對大家的PHP程序設計有所幫助。
相關文章
php?ZipArchive解壓縮實現(xiàn)后臺管理升級問題詳解
php?ZipArchive可以說是php自帶的一個函數(shù)了,他可對對文件進行壓縮與解壓縮處理,但是使用此類之前我們必須在php.ini中把extension=php_zip.dll前面的分號有沒有去掉,然后再重啟Apache這樣才能使用這個類庫2022-12-12
PHP5.6.8連接SQL Server 2008 R2數(shù)據(jù)庫常用技巧分析總結
這篇文章主要介紹了PHP5.6.8連接SQL Server 2008 R2數(shù)據(jù)庫常用技巧,結合實例形式分析總結了PHP5.6.8連接SQL Server 2008 R2數(shù)據(jù)庫操作步驟、遇到的問題及相應的解決方法,需要的朋友可以參考下2019-05-05
PHP實現(xiàn)將幾張照片拼接到一起的合成圖片功能【便于整體打印輸出】
這篇文章主要介紹了PHP實現(xiàn)將幾張照片拼接到一起的合成圖片功能,可實現(xiàn)多張圖片的合并,便于整體打印輸出.涉及php字符串、數(shù)組的遍歷、排序及圖片合成、裁剪、縮放等相關操作技巧,需要的朋友可以參考下2017-11-11
PHP提示Warning:phpinfo() has been disabled函數(shù)禁用的解決方法
這篇文章主要介紹了PHP提示Warning:phpinfo() has been disabled函數(shù)禁用的解決方法,涉及針對配置文件中禁用函數(shù)的修改技巧,非常具有實用價值,需要的朋友可以參考下2014-12-12
PHP實現(xiàn)根據(jù)瀏覽器跳轉不同語言頁面代碼
以下是對使用PHP實現(xiàn)根據(jù)瀏覽器跳轉不同語言頁面的代碼進行了介紹,需要的朋友可以過來參考下2013-08-08

