1

cookie.gc_maxlifetimeのデフォルト設定は24分なので、Cookieを1週間で期限切れに設定しても、「Remember me」は24分間機能するので、gc_maxlifetimeを延長することを考えましたが、もっと良い解決策があるでしょうか。

4

2 に答える 2

2

ガベージ コレクターは、実際にガベージを収集するため、このように呼ばれます。古いセッション ファイルを削除しないと、誰でも (Cookie を保存せずに) サイトで数十億の GET / 要求を実行でき、サーバーは数十億のセッション ファイルを生成しますが、これらのファイルは生成されません。 1 週間削除すると、サイトの速度が大幅に低下したり、ファイルシステムが混乱したりする可能性があります。「remember me」機能を実装したい場合は、独自のガベージ コレクションを行う必要があります (たとえば、同じ IP から 100 セッションを超えないようにするなど)。独自のセッション処理を実装することもできます (たとえば、それらを保存するなど)。セッション データの検索速度を向上させ、スケーラビリティの向上に備えます)。

于 2011-08-04T08:16:12.493 に答える
1

私は推測session.gc_maxlifetimeし、多分session.cookie_lifetimeあなたが意味するものですか?

まあ、あなたはそのようにそれを行うことができます、あなたのセッションをそれほど長く存続させます. 組み込みのセッション処理を使用するのではなく、目的の有効期間とハッシュ値を使用して Cookie を設定します。そのハッシュをデータベースに保持します。

「通常の」セッションをそれだけ長く続けることは、たとえばセキュリティ上の理由から、IMO ではお勧めできません。

于 2011-08-04T07:26:47.360 に答える