cookie.gc_maxlifetimeのデフォルト設定は24分なので、Cookieを1週間で期限切れに設定しても、「Remember me」は24分間機能するので、gc_maxlifetimeを延長することを考えましたが、もっと良い解決策があるでしょうか。
2 に答える
ガベージ コレクターは、実際にガベージを収集するため、このように呼ばれます。古いセッション ファイルを削除しないと、誰でも (Cookie を保存せずに) サイトで数十億の GET / 要求を実行でき、サーバーは数十億のセッション ファイルを生成しますが、これらのファイルは生成されません。 1 週間削除すると、サイトの速度が大幅に低下したり、ファイルシステムが混乱したりする可能性があります。「remember me」機能を実装したい場合は、独自のガベージ コレクションを行う必要があります (たとえば、同じ IP から 100 セッションを超えないようにするなど)。独自のセッション処理を実装することもできます (たとえば、それらを保存するなど)。セッション データの検索速度を向上させ、スケーラビリティの向上に備えます)。
私は推測session.gc_maxlifetime
し、多分session.cookie_lifetime
あなたが意味するものですか?
まあ、あなたはそのようにそれを行うことができます、あなたのセッションをそれほど長く存続させます. 組み込みのセッション処理を使用するのではなく、目的の有効期間とハッシュ値を使用して Cookie を設定します。そのハッシュをデータベースに保持します。
「通常の」セッションをそれだけ長く続けることは、たとえばセキュリティ上の理由から、IMO ではお勧めできません。