PHP 會話在30 分鐘後過期
問題:
如何建立一個PHP 會話分鐘?
答案:
方法:實作自訂會話逾時
PHP 內建的會話逾時方法,如同session.gc_lifetime和session.cookie_lifetime 由於各種因素並不可靠。相反,使用以下方法實現您自己的逾時:
if (isset($_SESSION['LAST_ACTIVITY']) && (time() - $_SESSION['LAST_ACTIVITY'] > 1800)) { session_unset(); session_destroy(); } $_SESSION['LAST_ACTIVITY'] = time();
此程式碼會更新每個要求的會話時間戳,保持會話檔案處於活動狀態並防止垃圾收集器過早刪除。
額外的安全性:
為了防止會話劫持,請重新產生會話ID定期:
if (!isset($_SESSION['CREATED'])) { $_SESSION['CREATED'] = time(); } else if (time() - $_SESSION['CREATED'] > 1800) { session_regenerate_id(true); $_SESSION['CREATED'] = time(); }
註解:
以上是如何使 PHP 會話在 30 分鐘不活動後過期?的詳細內容。更多資訊請關注PHP中文網其他相關文章!