如何增加Django管理員的不活動超時時間?默認情況下似乎非常短,並且在幾分鐘後似乎超時,這非常煩人。請注意,我知道SESSION_COOKIE_AGE,但我不希望此更改影響公共站點的超時。更改Django管理員不活動超時
1
A
回答
0
所以,有兩個可能的原因。首先是你在到期前失去了會話。 SESSION_COOKIE_AGE默認爲2周。如果您的會話持續時間不長,請檢查以確保您的後端未使用緩存或緩存未滿(並因此會在時間之前觸發會話)。
您可以使用settings.SESSION_SAVE_EVERY_REQUEST強制刷新每個請求的會話,但這可能會在繁忙的站點上出現性能問題。
另一種可能性是,您已將SESSION_COOKIE_AGE設置爲有意的小事情,但您現在希望管理Cookie保持更長時間。沒有辦法將管理會話超時與普通用戶超時分開,至少開箱即用。
您也可以編寫一箇中間件,將用戶拉出請求,檢查user.is_staff,如果是,請調用request.session.set_expiry()手動推送過期時間。
0
完成不同會話超時設置的一種可能方式是運行您的站點的兩個實例。一說是隻有您可以訪問(在本地主機上運行:8080爲例)在管理頁面可用,並且有它的特殊admin_settings.py文件,您的常規網站,是公開的。
根據您的服務器設置,這可以通過Apache和VirtualHosts輕鬆完成(我不會詳細介紹,因爲您可能有不同的設置)。
然後,您可以使用SSH隧道訪問運行在服務器本地主機上的管理站點。
另一種選擇是,如果你真的不希望你的管理員網站一直在運行,可以使用manage.py runserver來運行你的網站實例,並傳入你的管理設置(因爲理想情況下只有你將訪問此,runserver應該能夠處理流量):
$ python manage.py runserver --settings=admin_settings localhost:8080
然後通過SSH隧道進行訪問。如果你想避免用這種方法SSH隧道,那麼你可以考慮公開運行,但通過安全通道所概述here
相關問題
- 1. Django管理員密碼自動更改
- 2. 限制Django管理員更改權限
- 3. Django管理員更改下拉標籤
- 4. 更改AMQP不活動超時
- 5. 活動管理員更改默認模式admin_user
- 6. 排除在Django管理員的用戶不超級管理員的字段
- 7. wso2 api管理員更改超級管理員的密碼問題
- 8. 管理員在Django登錄時更改表單驗證
- 9. SilverStripe管理員更改
- 10. Django管理員DoesNotExist在/管理員/
- 11. django增加不活動超時
- 12. 修改管理員行動
- 13. 如何更改Android窗口管理器/活動管理器
- 14. Django管理員url.py
- 15. Django:更新模板 - 通知管理員
- 16. 如何在方向更改時管理標籤活動內的兒童活動?
- 17. 更改超級管理員密碼WSO2 IOTS 3.1.0
- 18. 活動管理員登錄緩慢
- 19. 活動管理員覆蓋操作
- 20. 活動管理員和內部聯接
- 21. 上修改更改列表Django管理
- 22. Django動態模型註冊管理員
- 23. Django自動生成S Admin管理員
- 24. 動態FilteredSelectMultiple在Django管理員
- 25. Django管理員自動保存
- 26. 更改列表顯示鏈接在Django管理員
- 27. Django - TinyMCE - 管理員 - 如何更改編輯器大小?
- 28. 查找管理員更改任意Django模型的網址
- 29. 更改管理員字段過濾器名稱django 1.7 - ModelAdmin.list_filter
- 30. 如何更改django管理員中的內嵌表單?
什麼活動超時?你的意思是你在幾分鐘後退出管理網站?如果是這樣,有什麼不對您的安裝 - 也許你的瀏覽器不正確存儲的cookie。 – 2011-03-29 16:07:03
你用於會話後端的是什麼? – GDorn 2011-03-29 17:09:25
@Roseman,除非Firefox,Chrome和IE全部破解,否則問題可能出在我的Django配置上。 – Cerin 2011-03-29 18:16:55