2013-02-12 6 views
2

Как обеспечить, чтобы сеанс не очищался после перезапуска Apache (или остановки и запуска)?Django, Apache и сеансы

Потому что, когда я обновляю исходный код и перезапускаю Apache, я обновляю веб-страницу, и там мне нужно снова войти в систему. Сессия потеряна.

Сессия хранится в Memcache. Не знаю, как и почему его очистили. Как сохранить сеанс так, чтобы пользователю не нужно было войти в систему после перезапуска apache?

ответ

0

Согласно Django documentation.

Для постоянных, кэшированных данных, установите SESSION_ENGINE на "django.contrib.sessions.backends.cached_db". Это использует кэш записи - каждая запись в кеш будет также записываться в базу данных. Чтение сеанса использует только базу данных, если данные еще не находятся в кеше.

+0

Спасибо. Установите «SESSION_ENGINE» на «django.contrib.sessions.backends.signed_cookies» (сеансы на основе файлов cookie). Любые преимущества cached_db над signed_cookies? – Geetanjali

+0

В этом случае ваши данные сеанса хранятся в файле cookie, необходимо зашифровать, чтобы избежать атак, и вы можете столкнуться с проблемами из-за максимального размера файла cookie. В сеансе на базе данных данные сеанса хранятся в базе данных, и только только идентификатор сеанса хранится в файле cookie. –

+0

Итак, на перезапуске файлов cookie Apache вымыты? Не можем ли мы сохранить сеанс с сеансами на основе файлов cookie? – Geetanjali

Смежные вопросы