ホームページ >バックエンド開発 >PHPチュートリアル >PHP セッションが 30 分間非アクティブになった後に期限切れになるようにするにはどうすればよいですか?
30 分後に PHP セッションを期限切れにする
質問:
30 後に期限切れになる分?
答え:
方法: カスタム セッション タイムアウトを実装する
PHP の組み込みセッション タイムアウト メソッド (次のような) session.gc_maxlifetime と 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 中国語 Web サイトの他の関連記事を参照してください。