0

これにはちょっと戸惑いましたが、

gc_maxlifetime が 1440 秒のデフォルトのphp ini設定でセッションが開始されたとします。そして、これで私を記憶する機能を使用することになり、Cookieの有効期間を14日に設定しました。セッションの最大存続時間が 24 分に設定されている限り、これは明らかに Cookie の存続時間 (14 日) よりも短く、10 日後 (たとえば) セッションは (もちろんgc の確率に依存します) 期限切れになる可能性があり、覚えている Cookie が持つセッション ID への参照。

では、セッションの有効期間よりも長い Cookie の有効期間を記憶するように設定するには、どうすればセッションを記憶/再開できるでしょうか? または、Cookie の有効期間に応じてセッションの最大有効期間を変更する必要がありますか?

4

2 に答える 2

1

通常、「remember me」Cookie は、セッション Cookie ではなく永続 Cookie です。これには、自動ログイン アクションを可能にする暗号化された情報が含まれています。つまり、まだアクティブなセッションがなくても、「remember me」Cookie が存在する場合、新しいセッションが開始されます。

于 2013-05-02T16:07:13.990 に答える
0

セッション GC 関数はセッション データ (デフォルトではプレーン テキスト ファイルに保持されます) を削除しますが、Cookie 設定はセッション ID を保持する Cookie を削除します。

セッションをアクティブにするには、そのデータ ファイルとその ID を持つ Cookie が存在する必要があります (AFAIK)。

于 2013-05-02T18:57:56.670 に答える