Сделано в Раскрутке

Архив эхоконференции RU.PHP

- RU.PHP ------------------------------------------------------------- RU.PHP -
 Msg  : #9060 [872]
 От   : Askold Volkov                 2:5020/400          21 июня 04, 07:07
 Кому : Mithgol the Webmaster                             23 июня 04, 23:35
 Тема : Re: Слово о методе, позволяющем PHP-странице закэшироваться
-------------------------------------------------------------------------------
From: "Askold Volkov" 

    Всем привет!

Mithgol the Webmaster писал к All 20.06.2004:

 MtW> Сегодня, немного почесав себе репу, я наковырял в manuaле способ
 MtW> изменить код HTTP-отклика вебсервера, не извращая заголовок Expires
 MtW> (и, собственно говоря, вообще не трогая заголовок Expires).

 MtW>       header("HTTP/1.x 304 Not Modified");

Этот способ, конечно, работает. Hо в моем случае в ответе стояла именно та
версия протокола, которая реально используется при связи, а не непонятная
HTTP/1.x. Может это и все равно, но... кто его знает.

 MtW>    include($_SERVER["DOCUMENT_ROOT"] . "/путь/от/корня/cache-it.mtw");

 MtW> то этот PHP-файл (а точнее говоря -- результат его работы)
 MtW> гарантированно засунется в кэш браузера примерно таким же манером, как
 MtW> туда засовывается обычная HTML-вебстраница. Без expires-заголовка,
 MtW> потому что и обычные страницы его не имеют ведь!

Дык вот именно, что "таким же манером, как туда засовывается обычная
HTML-вебстраница". А она тоже засовывается туда отнюдь не гарантированно.
Т.е. в твоей любимой мазиле может и гарантированно, но 90% населения
пользуется отнюдь не мазилой. А в IE поведение кэша весьма непредсказуемо и
загадочно. И экспериментальный факт состоит в том, что наличие expires
повышает вероятность попадания в кэш. Да и в любом случае даже при попадании
в кэш есть еще альтернатива - запрашивать if-modified-since или тихонько
взять из кэша ничего не запрашивая, а это уж точно управляется expires.

--
Аскольд Волков, Hовосибирск. http://www.inp.nsk.su/~volkov/

--- ifmail v.2.15dev5.3
 * Origin: Demos online service (2:5020/400)


При переходе по баннеру - скидка 25% на первый месяц обслуживания!
Самый простой способ получить ROOT-доступ
При переходе по баннеру - скидка 25% на первый месяц обслуживания!