亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

PHP中單點登錄的會話控制

2020-03-22 18:11:59
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了關于PHP中單點登錄的會話控制,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

1、簡單使用下session
在使用session之前需要session_start()開啟session
寫一個Demo來實現下

新建一個session.php

 ?php session_start(); //使用時必須開啟,如果你在php.ini里頭修改了配置那么就無需在開啟session了 $_SESSION[ username ] = admin //存儲session信息為鍵為username值為admin的一對數據? 

再新建一個getsession.php我們來取一下值

 ?php session_start(); //使用時必須開啟,如果你在php.ini里頭修改了配置那么就無需在開啟session了 echo $_SESSION[ username //取出在session里存的username的值? 

不同瀏覽器取到的值是不同的,原因是因為它們的sessionid不同,舉個栗子:
我用Google瀏覽器訪問session.php然后生成了一個session,那么我用同一瀏覽器訪問getsession.php的話是可以取到值的,當我用Firefox瀏覽器再次訪問session.php的時候又重新生成了一個session,再次訪問getsession.php也是可以取到值的,但是你會發現取到的不是同一個值,因為它們是兩個瀏覽器有不同的sessionID,如果你把Firefox的sessionID拿過來把Google的sessionID進行修改,那么你會發現它們兩個的值是一樣的,因為session取值只認sessionID。

童鞋們可以試著操作一下,看是不是這個樣子的。

2、跨域
如果我們在自己的Apache/nginx服務器上配置自己的html' target='_blank'>虛擬主機。
我的是Apache服務器,nginx也是修改配置文件----vhost.conf。

 VirtualHost *:80  DocumentRoot H:/myphp_www/PHPTutorial/WWW/sessoin  ServerName www.test.com ServerAlias  Directory H:/myphp_www/PHPTutorial/WWW/sessoin  Options FollowSymLinks ExecCGI AllowOverride All Order allow,deny Allow from all Require all granted /Directory  /VirtualHost 

一個虛擬域名為www.test.com的虛擬主機就搭建好了,切記一定要重啟Apache/nginx,否則配置不生效。

我們現在要做的就是要把兩個域名下的sessionID保持一致,例如:www.test.com和localhost,前提是在一服務器下。
下面我們來寫一個Demo實現一下(先不考慮安全和性能)

創建一個user.php我們要把當前localhost下的sessionID傳到www.test.com

 ?php session_start(); //一定要先開啟session $sid = session_id(); //獲取到當前的sessionID a href= http://www.test.com/getsession.php?sid= ?php echo $sid;? 跳轉 /a 

直接頁面上的跳轉的話是會出錯的,因為我們只傳輸了,getsession.php并沒有接收,所以我們要修改getsession.php文件

 ?php if (isset($_GET[ sid ])){ //setcookie( 名字 , 值 , 有效期 , 域名  $sid = $_GET[ sid  //setcookie( PHPSESSID , $sid); //設置sessionID //或者我們還可以用另一種方式 session_id($sid); //開啟session之前 指定一個sessionid session_start(); echo $_SESSION[ username ? 

這樣我們就根據sessionID的一致性解決了兩個域名之間的跨域問題

3、實現單點登錄----意為在localhost下登錄后在www.test.com下同步登陸-----跨域請求
使用ajax的話是不能實現跨域請求的,需要使用Jsonp來進行跨域
在session文件夾同級目錄下創建一個local文件來更好的區分兩個域
我們現在要實現的就是讓localhost和www.test.com進行互通-----前提是在一個服務器上

在session下創建一個api.php

 ?php? 

在local下創建一個index.html

 script src= www.test.com/api.php /script !-- JS代碼在瀏覽器端執行 -- 

在訪問local下index.html的時候它會發起兩個請求 因為里頭的js代碼請求了一下www.test.com/api.php

修改session下的getsession.php文件為以下內容:

 ?php session_start(); if(isset($_SESSION[ uid ])){ echo 用戶已登錄,id是 .$_SESSION[ uid  } else { echo 沒有登錄 ? 

復制一份session下的getsession.php到local下

在local下創建一個login.php文件

 ?php session_start(); $_SESSION[ uid ] = 18; //存儲session數據鍵為uid值為18的一對數據? 

當我們訪問login.php后在訪問當前目錄下的getsession.php文件,結果為:用戶已登錄,id是18.

那么我們現在要做到的就是在localhost下訪問login.php進行登錄的時候悄悄的也讓www.test.com進行登錄

修改local下login.php文件為以下代碼:

 ?php session_start(); $_SESSION[ uid ] = 18; //存儲session數據鍵為uid值為18的一對數據 $uid = $_SESSION[ uid  script src= www.test.com/api.php?uid= ?php echo $uid;? /script 

訪問localhost/local/login.php來進行同步登陸,然后在訪問localhost/local/getsession.php已經是登錄狀態了

現在直接訪問www.test.com/getsession.php文件是不會發生任何改變的,因為我們并沒有接收session,所以要修改session下api.php文件為以下代碼:

 ?php session_start(); $uid = $_GET[ uid  $_SESSION[ uid ] = $uid;? 

這樣的話在訪問www.test.com/getsession.php的時候也會同樣提示已登錄
這樣我們就使用了Jsonp實現了跨域請求,在登錄一個網站的情況下另一個網站同步登陸

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP !

相關推薦:

對于PHP中信息加密技術的介紹

如何解決php在foreach循環后留下的數組引用問題

如何解決vue+mui中mui-silder插件失效了不能拖拽的問題

以上就是PHP中單點登錄的會話控制的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品福利无圣光在线一区| 亚洲第一网站男人都懂| 日韩中文字幕在线播放| 国产精品午夜一区二区欲梦| 亚洲国产日韩精品在线| 久久久久五月天| 日韩一区二区三区国产| 成人免费激情视频| 欧美视频在线视频| 欧美激情欧美激情在线五月| 九九热视频这里只有精品| 久久综合九色九九| 精品国内自产拍在线观看| 精品国产成人在线| 久久大大胆人体| 亚洲成人久久电影| 国产精品影院在线观看| 三级精品视频久久久久| 少妇高潮久久久久久潘金莲| 国产亚洲一区二区精品| 中文字幕av一区二区| 不卡av在线网站| 亚洲国产精品一区二区三区| 日韩欧美精品网址| 亚洲成人av中文字幕| 中文在线资源观看视频网站免费不卡| 亚洲精品美女在线观看播放| 国产精品高潮在线| 成人午夜一级二级三级| 91av中文字幕| 亚洲成人免费网站| 国产精品99久久久久久久久久久久| 久久久久亚洲精品国产| 久久久久久成人精品| 久久久午夜视频| 欧美一乱一性一交一视频| 欧美成人免费网| 91国偷自产一区二区三区的观看方式| 亚洲福利精品在线| 欧美黄色三级网站| 亚洲一二在线观看| 精品久久香蕉国产线看观看gif| 亚洲肉体裸体xxxx137| 亚洲第一二三四五区| 91在线免费观看网站| 日韩av在线免费观看一区| 九九久久久久久久久激情| 日韩欧亚中文在线| 国产中文欧美精品| 欧美精品激情在线观看| 欧美疯狂性受xxxxx另类| 欧美日韩精品在线观看| 亚洲综合中文字幕68页| 欧美色道久久88综合亚洲精品| 国产一区深夜福利| 国产精品三级美女白浆呻吟| 欧美国产第二页| 国产精品久久久久久久av电影| 欧美激情精品久久久久| 国产a级全部精品| 深夜成人在线观看| 亚洲国产精品一区二区三区| 亚洲男人的天堂在线播放| 欧美激情国产精品| 欧美最猛性xxxx| 国产成人精品免费久久久久| 91网站免费观看| 欧美午夜精品久久久久久浪潮| 欧美黑人极品猛少妇色xxxxx| 国产ts一区二区| 日韩av免费看网站| 激情久久av一区av二区av三区| 久久影院中文字幕| www.欧美三级电影.com| 欧美小视频在线观看| 97在线视频免费播放| 伦理中文字幕亚洲| 国产91精品黑色丝袜高跟鞋| 国产精品成人品| 性欧美办公室18xxxxhd| 日韩国产中文字幕| 成人黄色短视频在线观看| 日韩av黄色在线观看| 一本色道久久综合狠狠躁篇的优点| 日本精品视频在线| 97激碰免费视频| 国产精品白嫩美女在线观看| 91探花福利精品国产自产在线| 91成人天堂久久成人| 国产日韩欧美电影在线观看| 亚洲18私人小影院| 一个人www欧美| 亚洲国产一区二区三区在线观看| 欧美成年人网站| 日本a级片电影一区二区| 欧美在线视频观看| 亚洲国产精品大全| 91免费综合在线| 欧美成人精品激情在线观看| 日韩欧美亚洲国产一区| 欧美国产日韩一区| 国产精选久久久久久| 97视频在线观看免费高清完整版在线观看| 欧美午夜精品伦理| 精品无人区太爽高潮在线播放| 国产欧美va欧美va香蕉在线| 亚洲欧美三级伦理| 亚州欧美日韩中文视频| 欧美激情久久久久久| 国产精品美女999| 国产精品入口夜色视频大尺度| 一级做a爰片久久毛片美女图片| 日韩资源在线观看| 欧美性猛交xxxx乱大交极品| 欧美黑人一级爽快片淫片高清| 日韩中文字幕在线播放| 欧美中文在线字幕| 欧美在线视频一二三| 日韩高清免费在线| 亚洲精品一区久久久久久| 国产精品a久久久久久| 亚洲va欧美va国产综合剧情| 亚洲伦理中文字幕| 国产精品久久国产精品99gif| 久久天天躁狠狠躁夜夜爽蜜月| 欧美性猛交99久久久久99按摩| y97精品国产97久久久久久| 91国内揄拍国内精品对白| 亚洲欧洲美洲在线综合| 亚洲精品国产拍免费91在线| 国产精品欧美在线| 一区二区在线免费视频| 国产精品第10页| 亚洲天堂成人在线| 亚洲精品99999| 91免费国产视频| 亚洲网站视频福利| 92裸体在线视频网站| 欧美日韩中文在线观看| 久久全国免费视频| 青青草国产精品一区二区| 国产欧美日韩精品专区| 自拍偷拍亚洲一区| 亚洲精品97久久| 国产精品中文久久久久久久| 亚洲 日韩 国产第一| 日韩精品在线免费| 国产精品欧美日韩久久| 欧美激情手机在线视频| 欧美日韩亚洲精品一区二区三区| 久久久噜久噜久久综合| 91精品国产91久久久久福利| 欧美体内谢she精2性欧美| 国产精品老牛影院在线观看| 欧美第一淫aaasss性| 亚洲性夜色噜噜噜7777| 美女撒尿一区二区三区| 欧美激情久久久| 国产精品久久久久一区二区| 久久久国产一区二区三区| 性夜试看影院91社区| 91探花福利精品国产自产在线| 在线性视频日韩欧美| 日韩精品福利网站|