Intereting Posts
Возвращаемое значение конструктора? MySQL + PHP: выборка данных с использованием внешних ключей Как установить альтернативный цвет строки для повторяющейся таблицы в php? Chrome добавляет «- вложение» в загруженный файл Как загрузочные сессии в Zend Framework 2 Обновить значения из таблицы MYSQL без перезагрузки страницы? PHP (CI) cURL передал многомерный массив не ведет себя как один (не может его зацикливать) Электронная почта заполняется PDF с PHP или PHPMailer сортировать многомерный ассоциативный массив? Получение относительного пути от абсолютного пути в PHP API-интерфейс SoftLayer Nessus Scan Status / Report через PHP Вызов функции-члена getSession () для не-объекта в vendor / behat / mink-extension / src / Behat / MinkExtension / Context / RawMinkContext.php в строке 81 Как я должен служить изображению с Laravel? Исправление Magento Uncaught SoapFault: Не удалось загрузить расширение Soap на сервере в / opt / local / apache2 / htdocs / code / Я хочу добавить 100 лет к отображаемым датам wordpress

Есть ли способ отключить кеш браузера для одной страницы?

Для небольшого сайта интрасети у меня есть динамическая (включая AJAX) страница, которая некорректно кэшируется Firefox. Есть ли способ отключить кеширование браузера для одной страницы?

Вот настройка, которую я использую:

  • Apache под XAMPP, работающий на сервере Windows
  • PHP

осветление

Контент, который меня особенно интересует, это текст страницы и параметры по умолчанию в некоторых <select> s. Поэтому я не могу просто добавить случайные числа в конце некоторых URL-адресов изображений, например.

Обновить:

Я следовал рекомендациям, которые я получил до сих пор:

  • Я отправляю заголовки nocache (см. Ниже)
  • Я включаю параметр URL временной метки и перенаправляю его на новый, если страница перезагружается через 2 секунды, например:

     $timestamp = $_GET['timestamp']; if ((time()-$timestamp) > 2) { header('Location:/intranet/admin/manage_skus.php?timestamp='.time()); } 

Теперь Firebug показывает, что заголовки не указывают кеш, но проблема сохраняется. Вот заголовки ответов для страницы:

 Date Fri, 25 Sep 2009 20:41:43 GMT Server Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i mod_autoindex_color PHP/5.2.8 X-Powered-By PHP/5.2.8 Expires Mon, 20 Dec 1998 01:00:00 GMT Last-Modified Fri, 25 Sep 2009 20:41:43 GMT Cache-Control no-cache, must-revalidate Pragma no-cache Keep-Alive timeout=5, max=100 Connection Keep-Alive Transfer-Encoding chunked Content-Type text/html 

Добавить текущую временную метку в качестве параметра URL-адреса, например

 http://server.com/index.php?timestamp=125656789 

Я думаю, это говорит вам, что вы хотите:

http://www.thesitewizard.com/archive/phptutorial2.shtml

Найдите «Предотвращение браузера из кэширования»

 header( "Expires: Mon, 20 Dec 1998 01:00:00 GMT" ); header( "Last-Modified: " . gmdate("D, d MYH:i:s") . " GMT" ); header( "Cache-Control: no-cache, must-revalidate" ); header( "Pragma: no-cache" ); 

Вы должны отправить следующий заголовок:

 Cache-control: no-cache 

в ответе HTTP.

Вы можете добавить эти заголовки:

 Cache-Control: no-cache 

И (для обратной совместимости с HTTP / 1.0 клиентами)

 Pragma: no-cache 

Вот еще один пример, который не является специфичным для PHP.

Попробуйте это в разделе <head> </head> :

 <meta http-equiv="cache-control" content="no-cache, no store"/> <meta http-equiv="Expires" Content="Mon, 25 May 2009 19:07:03 GMT"> 

Найдено, что в конце длинной нити здесь:

http://forums.mozillazine.org/viewtopic.php?f=25&t=673135&start=75

Используйте функцию header (). Вы должны установить несколько, чтобы охватить все браузеры; см. http://www.php.net/manual/en/function.header.php#75507