我想知道PHP會話存儲在服務器內存多長時間。如果用戶登錄(在服務器中設置會話變量),並且他讓瀏覽器長時間保持打開狀態,假設30天,並在第31天重新加載頁面? Ca瀏覽器訪問會話變量(瀏覽器仍然有會話cookie)?php會話在服務器中存儲多久?
回答
默認php.ini將會話過期時間設置爲30分鐘。
查閱這些設置:的session.gc_maxlifetime和session.cookie_lifetime
只要有瀏覽器存儲cookie的,它不會,如果它被關閉或打開時事。
如果你想存儲可以說,30天的會話,你可以添加:
ini_set('session.gc_maxlifetime', 30*24*60*60);
ini_set('session.cookie_lifetime', 30*24*60*60);
謝謝您的回答。我還有一個疑問,即如果瀏覽器在30分鐘後使用會話cookie發送請求以訪問會話變量會怎麼樣?我很困惑。 – user3370495 2014-09-23 16:14:41
@ user3370495會話由服務器管理。因此,一旦會話過期,服務器將不再識別cookie,即使用戶仍然擁有它。 – 2014-09-23 16:18:27
在cookie_lifetime期間(可以說30分鐘)之後,cookie將過期,瀏覽器將自動刪除它,這意味着會話數據將丟失。或者,當gc_maxlifetime到期時,垃圾收集器應該從服務器中刪除會話信息。 – 2014-09-23 16:20:13
通常你會代碼爲您的會話處理代碼部分的函數一段時間之後到期會議,所以在這種情況下,我就不會不管多久,他們離開了那裏瀏覽器中打開
我想這取決於你在php.ini http://php.net/manual/en/function.session-set-cookie-params.php
- 1. PHP多服務器會話
- 2. 在會話中存儲持久數據
- 3. PHP會話處理多個服務器
- 4. 在服務器會話中存儲通用Google Analytics(分析)
- 5. 我如何將會話存儲在MVC3的SQL服務器中
- 6. 用於PHP的亞馬遜AWS服務器永久存儲器
- 7. PHP會話存儲
- 8. emacs服務器在SSH會話中不持久
- 9. 跨多個頁面存儲PHP會話
- 10. current_user未存儲在生產服務器上的會話
- 11. 在ASP .NET服務器上存儲會話標記
- 12. 我可以將會話信息存儲在websocket服務器
- 13. 爲什麼會話需要存儲在站點服務器上?
- 14. 在會話服務器端存儲一個類實例w/Padrino?
- 15. 會話存儲JSON的JavaScript和使用它在服務器端
- 16. 將會話數據存儲在memcache服務器上
- 17. 在rails服務器和php服務器之間共享會話
- 18. 通過服務器上的會話存儲,會話祕密會做什麼?
- 19. 在PHP會話中存儲對象
- 20. 會話不在PHP中存儲變量?
- 21. php在會話中存儲用戶ID?
- 22. 在PHP會話中存儲域模型
- 23. PHP在會話中存儲類
- 24. 在PHP會話中存儲ajax結果
- 25. 在會話PHP中存儲用戶名?
- 26. 如何在會話中存儲值php
- 27. 會話價值將存儲在PHP中
- 28. PHP中的永久會話
- 29. PHP中的持久會話
- 30. MySQL服務器中存儲的PHP
已設置它是可配置的。請參閱http://stackoverflow.com/questions/8311320/how-to-change-the-session-timeout-in-php – folkol 2014-09-23 15:57:26
HTTP連接不是有狀態的。他們打開連接,獲取一些文件,然後關閉它。服務器不知道在這30天內瀏覽器發生了什麼。 – DanFromGermany 2014-09-23 15:57:35