0
所以我限制了我的應用程序的會話TTL。在不活動的時間之後,用戶在向用戶需要登錄的頁面發出請求時不能自動重定向到登錄頁面。檢測過期的會話
但是這不是用戶友好的真。用戶只需轉發到登錄頁面,無需事先通知或解釋爲什麼發生。
我想通過登錄頁面上的消息通知我的用戶,他們的請求由於不活動而終止,並且他們需要重新登錄。那麼解決這個問題的適當方法是什麼?
所以我限制了我的應用程序的會話TTL。在不活動的時間之後,用戶在向用戶需要登錄的頁面發出請求時不能自動重定向到登錄頁面。檢測過期的會話
但是這不是用戶友好的真。用戶只需轉發到登錄頁面,無需事先通知或解釋爲什麼發生。
我想通過登錄頁面上的消息通知我的用戶,他們的請求由於不活動而終止,並且他們需要重新登錄。那麼解決這個問題的適當方法是什麼?
根據.ini文件中指定的probability settings/intervals,PHP自動清理過期會話是「代碼實際運行之前」啓動的一部分。這會自動運行並在您的範圍之外運行。如果您需要控制(或跟蹤)過期的會話,那麼您必須禁用PHP垃圾回收器並自行推出。它將負責定期掃描您的會話存儲介質(文件,數據庫,ouija板等),以便過期會話並刪除它們。
一個更好的選擇是簡單地使用長壽命的會話文件,並以某種方式記錄會話中最後一次訪問的時間。無論是「您上次做了XXX分鐘後做了什麼,請確認您是您」還是「自您登錄後已經過了XXX分鐘」等等......
這讓您無需自己推出自己的產品會話過期處理程序,並仍然讓用戶「登錄」,只需驗證他們的狀態。
您可以簡單地將它們重定向到登錄頁面,然後獲取參數,例如「login.php?why = 1」,然後根據原因狀態編寫消息。如果這是你的要求。 –