2010-08-27 3 views
1

Я использую codeigniter 1.7.2.Выпуск сессии CodeIgniter на Opera и Safari

В моем веб-приложении после выхода из системы, нажав кнопку «Назад» браузера, страница перезагружается на зарегистрированной странице.

Эта проблема возникает на Опера и Сафари только. У меня отключен кеш с помощью мета, но это не помогает. :(

<meta http-equiv="PRAGMA" content="NO-STORE" /> 
<meta http-equiv="Expires" content="-1" /> 
<meta http-equiv="CACHE-CONTROL" content="NO-STORE" /> 

Пожалуйста, помогите ..

ответ

0

Можете ли вы показать, как вы отключили кэш с помощью мета?

Браузеры используют отдельный кеширования-механизм истории браузера. Даже если отключить кэш браузера .. все еще может сохранить страницу в истории браузера заголовок Cache-Control: no-store должно мешать сохранять страницы на всех лучший способ отправить этот заголовок использует PHP вместо того, чтобы полагаться на мета-элементов:

header("Cache-Control: no-store"); 

Смотрите также: What is Cacheable разницу между Cache-Control: no-cache и Cache-Control: no-store

Update: Это не работает в Opera, она работает, по крайней мере в Firefox и Chrome.

+0

, но заголовок («Cache-Control: no-store»); тоже не работает :( – viMaL

+0

А, я только что протестировал его, и кажется, что Opera всегда кэширует страницы, используемые для его истории. Дополнительная информация по теме: http://stackoverflow.com/questions/2866826/how-do-i-stop -opera-from-caching-a-page –

+0

но все же я не получил решение ,,,, – viMaL

0

Короткий ответ: единственный способ предотвратить Opera использовать кэш по истории навигации (назад/кнопка вперед), чтобы служить страницу по протоколу HTTPS с Cache-Control: нужно обязательно перепроверять заголовок.

+0

Мы работаем над предложениями по устранению этой проблемы, например: http://www.ietf.org/ id/draft-pettersen-cache-context-05.txt Фактическая реализация, вероятно, находится на некоторое время - в ожидании дальнейшего обсуждения предложения. – hallvors

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