После выхода из системы, если я нажму кнопку "Назад", я могу увидеть последнюю страницу, требующую входа в систему
У меня есть настройка, настроенная в моем веб-приложении. У меня проблема со следующим рабочим процессом:
Для доступа к панели администратора мне нужно войти в систему. После этого я обычно перехожу к панели администратора своего веб-приложения. Когда я нажимаю logout, он перенаправляет меня на корневую страницу, которая до сих пор является поведением.
Странная вещь начинается, когда на этой странице и после этих действий я нажимаю кнопку "Назад", которая показывает мне последнюю сохраненную страницу. Мой сеанс был уничтожен, потому что, если я нажму "обновить", он перенаправляет меня, и он ссылается на логин для доступа к странице, но я не хочу видеть последнюю страницу истории браузера.
Как это возможно и что я могу сделать, чтобы предотвратить это? Это связано с кешированием браузера? Единственный способ исправить это - удалить кеширование из зарегистрированных страниц для предотвращения такого поведения? Как я могу это сделать?
Ответы
Ответ 1
Вы хотите настроить заголовки своей страницы для предотвращения кеширования. Вы можете сделать это так:
before_filter :set_cache_buster
def set_cache_buster
response.headers["Cache-Control"] = "no-cache, no-store, max-age=0, must-revalidate"
response.headers["Pragma"] = "no-cache"
response.headers["Expires"] = "Fri, 01 Jan 1990 00:00:00 GMT"
end
Кредит переходит к первому отклику этого потока.
Ответ 2
Вы можете попытаться сказать браузеру не кэшировать материал, а то, что это - попытка.
Если они просмотрели страницу ранее, вы можете сделать это, чтобы не было возможности увидеть страницу снова - в какой-то момент она несколько не поддается контролю.
Например, чем может загружать HTML-страницу (что они делают при просмотре страницы), и вы также не можете остановить их от скриншотов.
В этом случае кеширование браузера будет работать в некоторых (чаще?) случаях, обратитесь к Майклу Фредерику.
Ответ 3
это определенно связано с кешированием. Вы должны соответствующим образом настроить соответствующие заголовки HTTP. Вероятно, этот ответ вам нужен: Как предотвратить кеширование страниц браузера в Rails