Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как обойти кэш Opera

12K
26 февраля 2006 года
kavolorn
14 / / 26.02.2006
Здравствуйте!

При администрировании сайта у меня возник интересный вопрос. При добавлении новой статьи (см . главную страницу http://housekeeping.kulichki.com/) Firefox и IE ее показывают, а Opera показывает ранее закэшированную страницу. Как возможно это обойти? Статьи показываются динамически с помощью Perl скрипта.
2.2K
26 февраля 2006 года
BeOne
92 / / 15.12.2004
Цитата:
Originally posted by kavolorn
Здравствуйте!

При администрировании сайта у меня возник интересный вопрос. При добавлении новой статьи (см . главную страницу http://housekeeping.kulichki.com/) Firefox и IE ее показывают, а Opera показывает ранее закэшированную страницу. Как возможно это обойти? Статьи показываются динамически с помощью Perl скрипта.

2.2K
26 февраля 2006 года
BeOne
92 / / 15.12.2004
Цитата:
Originally posted by kavolorn
Здравствуйте!

При администрировании сайта у меня возник интересный вопрос. При добавлении новой статьи (см . главную страницу http://housekeeping.kulichki.com/) Firefox и IE ее показывают, а Opera показывает ранее закэшированную страницу. Как возможно это обойти? Статьи показываются динамически с помощью Perl скрипта.


Либо pragma: no-cache, либо динамичиская часть к url, типа url.ru/new/?nocache=h7fy3hn78fg3ig

583
26 февраля 2006 года
#define
150 / / 03.12.2002
Пользуюсь оперой уже несколько лет.. проблем с кэшом не было никогда, притом что настройки кэша стоят по умолчанию.
У меня на сайте публикации тоже динамически отображаются - проблем с кэшом нет притом что заголовки:
header('Expires: Fri, 13 Jan 1984 16:00:00 GMT');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0',false);
header('Pragma: no-cache');
я вывожу только для режима администрирования.
12K
27 февраля 2006 года
kavolorn
14 / / 26.02.2006
Спасибо за ответы!
С динамическим url у меня почему-то фишка не прокатила, пробовал :( А вот насчет

header('Expires: Fri, 13 Jan 1984 16:00:00 GMT');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0',false);
header('Pragma: no-cache');

хотел бы узнать побольше. Куда таковые директивы включать?
2.2K
27 февраля 2006 года
BeOne
92 / / 15.12.2004
Цитата:
Originally posted by #define

header('Expires: Fri, 13 Jan 1984 16:00:00 GMT');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');


А для режима юзерфейса Last-Modified: какой берешь? Тоже текущую дату?

583
27 февраля 2006 года
#define
150 / / 03.12.2002
Цитата:
Originally posted by kavolorn
Куда таковые директивы включать?


Включать в любое место до вывода какой-либо информации в браузер.

12K
27 февраля 2006 года
kavolorn
14 / / 26.02.2006
Цитата:
Originally posted by #define
Включать в любое место до вывода какой-либо информации в браузер.


Использовать Pragma: no-cache я вроде понял как:
print "Pragma: no-cache Content-Type: text/html\n\n";
- вначале скрипта (перед выводом на страницу).
Возникает два вопроса: 1. Правильно ли я это делаю?
2. Такая технология оправдана, если страница нагружена
графикой?(картинки браузер будет загружать снова и снова?)

Правда до меня (к моему стыду) не дошло как пользоваться
header('Expires: Fri, 13 Jan 1984 16:00:00 GMT');
...
header('Pragma: no-cache');
- такими штуками. Могу предположить это дело требует
подключение модулей. Если не сложно, то попрошу дать
небольшой примерчик страницы и скрипта, а лучше ссылку,
где можно познакомится основами всего этого дела.

583
27 февраля 2006 года
#define
150 / / 03.12.2002
Цитата:
Originally posted by kavolorn
Использовать Pragma: no-cache я вроде понял как:
print "Pragma: no-cache Content-Type: text/html\n\n";
- вначале скрипта (перед выводом на страницу).
Возникает два вопроса: 1. Правильно ли я это делаю?


Только сейчас обратил внимание на то, что речь идет про Perl. Pragma, Expires и прочие - все это заголовки, которые передаются браузеру. Потому все необходимые заголовки надо отсылать до вывода данных, а если точнее то до Content-Type. Все, что идет после него, расценивается как HTML (если контент-тайп соответсвующий).
Perl помню смутно, но скорее всего то, что тебе надо делается след. образом:
print "Pragma: no-cache\nExpires: Fri, 01 Jan 1980 12:00:00 GMT\nContent-Type: text/html\n\n";
Сомневеюсь только в том, чем отделяются заголовки - предполагаю, что одним \n.

Цитата:
Originally posted by kavolorn
2. Такая технология оправдана, если страница нагружена
графикой?(картинки браузер будет загружать снова и снова?)


Приведенные заголовки "говорят" браузеру не кэшировать страницу или об ее устаревании, стала быть все будет загружаться снова. Об оправданности подхода в вашей ситуации судить вам.

Цитата:
Originally posted by kavolorn
Могу предположить это дело требует
подключение модулей. Если не сложно, то попрошу дать
небольшой примерчик страницы и скрипта, а лучше ссылку,
где можно познакомится основами всего этого дела.


Подключения модулй не требуется. Просто ф-ия Header относится к PHP, а в Perl это print'ом делается.
Ссылку могу дать только на PHP-функцию Header - там есть примеры разных заголовков.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог