php中如何配置Session


在Web 技術發展歷史上,雖然 Cookie 技術的出現是一次重大的變革,但 Cookie 實在客戶端的計算機中保存資料 ,所以引起了一個爭議:用戶有權阻止 Cookie 使用,使 Web 服務器無法通過 Cookie 來跟蹤用戶信息。而 Session 技術是將使用者相關的資料存放在服務器系統之下,所以使用者無法停止 Session 的使用。大理石平台維修

 

可以把 Cookie 比喻成第一次去商場時,商家為客戶辦理的購物會員卡,並由客戶自己保存。如果客戶下次再去商場時忘記攜帶購物卡,或者把購物卡丟失了,這樣用戶就不能再次使用會員身份來購物了。但是如果商家再為客戶辦理完會員卡之后,由商場來保存這張會員卡,用戶就不需要把卡放在自己身上了。但是商場辦理會員卡的客戶特別多,當客戶每次來商場消費時,商場怎么才能知道客戶是不是商場的會員呢? 這就要在客戶來商場辦理會員卡的時候,商場會要求保存客戶班里的會員卡的卡號,當下次客戶再來購物消費時,商場就可以通過客戶的卡號查詢到會員卡的登記消費等信息了。

Session就是這樣,在客戶端僅需要保存由服務器為用戶創建的一個 Session 標識符(相當於會員卡的卡號),稱之為

Session ID,而在服務器端(文件/數據庫中)保存 Session 變量的值 。Session ID是一個既不會重復又不容易被找到的有規律的、由32位十六進制數組成的字符串。Session ID 會保存在客戶端的 Cookie里,如果用戶阻止 Cookie 的使用,則可以將 Session ID 保存在用戶瀏覽器地址欄的 URL中。

在php配置文件中,有一組和 Session 相關的配置選項。通過對一些選項的設置,就可以對 Session 進行配置,否則將使用默認的 Session配置。

php.ini設置參考項:

1. 處理session存取的模式

session.save_handler = files

2. session檔案存放路徑

session.save_path = /tmp

3. session使用cookie的功能,啟動: 1

session.use_cookies = 1

4. session名字

session.name = PHPSESSID

5. 自動啟動;0:關;1:開啟

session.auto_start = 0

6. session使用cookie的生存期,以秒為單位

session.cookie_lifetime = 0

7. cookie有效作用域名

session.cookie_domain = "a.com"

8. 概率是 session.gc_probability/session.gc_divisor 結果 1/1000;不建議設置過小,因為session的垃圾回收,是需要檢查每個文件是否過期的

session.gc_probability = 1

session.gc_divisor = 1000

9. 過期時間 默認24分鍾https://www.frlh168.com/dlsbaike/788.html

session.gc_maxlifetime = 1440


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM