1

Django1.2.5を使用しているサイトで作業しています。Django認証バックエンドを使用してユーザーのログインとログアウトを行います。次に、これはDjangoセッションフレームワークを使用してCookieを設定します。Djangoのセッションバックエンドによって設定されたCookieは2週間後に期限切れになるようです。アカウントからログアウトし、再度ログインする必要があるというユーザーからの苦情がありました。これは、Cookieが2週間後に期限切れになることが原因であると思われます。私はSESSION_COOKIE_AGE1年(つまり、31556926秒)する必要がありますが、それがこの問題の最善の解決策であるかどうかはわかりません-意図しない副作用があるかどうかはわかりません。

ユーザーを無期限にログインさせ続ける方法はありますか(つまり、手動でログアウトするまでユーザーをログインさせ続ける)?設定は見つかりませんでしたが、どのような解決策(ミドルウェアなど)でもかまいません。

4

2 に答える 2

1

セッションの寿命を延ばす唯一の方法は、有効期間の長いCookieを使用することです。他のすべてのユーザー識別方法(IP +ユーザーエージェントなど)はあいまいさを伴うため、セキュリティの問題があります。

于 2011-04-08T15:38:27.353 に答える
1

ユーザーセッションCookieを定期的に更新する単純なミドルウェアを作成しました。これにより、説明されている問題が解消されます。

https://github.com/IlyaSemenov/django-everlasting-sessions

于 2015-04-02T12:56:51.037 に答える