日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
PHPSession是什么
在 php 中,Session 是一種服務器端的機制,服務器使用一種散列表的結(jié)構(gòu)(類似于 JSON)來保存信息。相比于保存在客戶端的 Cookie,Session 將用戶交互信息保存在了服務器端,使得同一個客戶端每次和服務端交互時,不需要每次都傳回所有的 Cookie 值,而是只需要傳回一個 ID 即可,這個 ID 是客戶端第一次訪問服務器的時候生成的,而且是唯一的。

十年建站經(jīng)驗, 網(wǎng)站設計、成都網(wǎng)站設計客戶的見證與正確選擇。創(chuàng)新互聯(lián)建站提供完善的營銷型網(wǎng)頁建站明細報價表。后期開發(fā)更加便捷高效,我們致力于追求更美、更快、更規(guī)范。

還有一點就是,因為 Cookie 存儲在客戶端,所以用戶有權(quán)禁用 Cookie,而 Session 是存儲在服務器端的,用戶無法禁用。

Session 簡介

Session 在 Web 技術(shù)中占有非常重要的地位。由于網(wǎng)頁是一種無狀態(tài)的連接程序,無法記錄用戶的瀏覽狀態(tài),所以需要通過 Session 來記錄用戶的有關(guān)信息,以供用戶再次以這個身份對 Web 服務器發(fā)起請求。

Session 中文是“會話”的意思,與 Cookie 類似,都是用來儲存使用者相關(guān)資料的,比如用戶名、訪問權(quán)限、登陸時間等。與 Cookie 最大不同之處在于 Cookie 是將資料存放于客戶端電腦之中,而 Session 則是將數(shù)據(jù)存放于服務器系統(tǒng)之下。

當開啟一個 Session 時,PHP 將會創(chuàng)建一個隨機的 Session ID(例如“t5is1r7ct740dn390kuv3mpcse”),每個用戶的 Session ID 都是唯一的,而且 Session ID 與服務器上存儲該用戶 Session 數(shù)據(jù)的文本文件名稱相同。

Session ID 會分別保存在客戶端和服務器端兩個位置。

  • 客戶端,使用臨時的 Cookie 保存在瀏覽器指定目錄中,Cookie 名稱默認為“PHPSESSID”;
  • 服務器端,以文本文件形式保存在指定的 Session 目錄中。

默認情況下,這個 Session ID 將作為一個 Cookie 發(fā)送給 Web 瀏覽器,接下來 PHP 頁面將使用這個 Cookie 來訪問 Session 的信息。

與 Cookie 相比,Session 擁有以下的優(yōu)勢:

  • 通常情況下 Session 更加安全,因為 Session 中的數(shù)據(jù)不會在客戶端和服務器端來回重復傳遞;
  • Session 能夠存儲比 Cookie 更多的信息;
  • 在用戶禁用 Cookie 的情況下,使用一些方法任然能保持 Session 正常工作。

Session 的工作原理

我們可以使用 PHP 腳本創(chuàng)建和存儲 Session 中的數(shù)據(jù)。在創(chuàng)建一個 Session 后,所有 Session 變量在用戶一次會話期間里訪問的所有頁面都有效。其工作機制如下圖所示。



圖:Session 工作原理

Session 的存儲方式

Session 默認會以文本的形式存儲在服務器的臨時目錄中,文件名以“sess_”作為前綴,后面加上“Session ID”,例如“sess_t5is1r7ct740dn390kuv3mpcse”。

我們可以在 php.ini 中找到 Session 的相關(guān)配置,下面是一些常用的配置信息:

session.save_handler = files                  #session 的存儲方式,默認是文件,還可以是 redis 或者是 memcache
session.save_path = "d:/wamp/tmp"    #session 文件的存儲目錄
session.use_cookies = 1                        #是否使用 cookie 存儲 session_id
session.name = PHPSESSID                  #客戶端存儲 session_id 的會話名
session.auto_start = 0                           #是否自動開啟 session
session.cookie_lifetime = 0                   #設置客戶端中存儲的 session_id 的過期時間,以秒為單位
session.use_only_cookies=0                 #是否只使用 cookie 來處理 session_id
session.gc_divisor = 1000                     #進程比率
session.gc_probability = 1                    #垃圾回收的處理幾率
session.gc_maxlifetime = 1440             #設置 session 文件的過期時間

Session 的生命周期

Session 在以下情況會被刪除,也就是失效:

  • Session 超時,超時指的是連續(xù)一定時間服務器沒有收到該 Session 所對應客戶端的請求,并且這個時間超過了服務器設置的 Session 超時的最大時間;
  • 程序調(diào)用方法主動銷毀 Session;
  • 服務器關(guān)閉或服務停止。

當前名稱:PHPSession是什么
網(wǎng)站鏈接:http://www.dlmjj.cn/article/dhjhgge.html