Добавить истекает заголовок без mod_expires? - PullRequest
7 голосов
/ 02 сентября 2010

Я знаю, что могу добавить заголовок expires, используя mod_expires.Однако что я могу сделать, если на сервере Apache не установлено mod_expires и я не хочу маршрутизировать доступ к файлам через язык сценариев, такой как PHP?

Ответы [ 3 ]

7 голосов
/ 02 сентября 2010

Вы можете использовать mod_header , чтобы установить поле заголовка вручную:

Header set Expires "..."

Но так как Срок действия требует абсолютвремя , используйте Cache-Control параметр max-age для времен относительно времени доступа:

Header merge Cache-Control max-age=3600
1 голос
/ 02 сентября 2010

Это должно сказать браузеру обновить страницу при последующих посещениях.Дата истечения просто должна быть в прошлом ... Вы можете установить дату, используя PHP, чтобы сделать ее «просто» в прошлом, или просто оставить ее как дату, когда вы нашли этот ответ !!!

header("Cache-Control: no-cache, must-revalidate");
header("Expires: Thu, 2 Sep 2010 05:00:00 GMT");

ОБНОВЛЕНИЕ: Извинения - я пропустил «Не» в предложении о маршрутизации файлов через PHP!Вы также можете использовать эти метатеги HTML:

<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="expires" content="Thu, 2 Sep 2010 05:00:00 GMT">
1 голос
/ 02 сентября 2010

Если у вас есть статические заголовки Expires, следующее добавит заголовок Expires к вашим файлам js и css:

<FilesMatch "\.(js|css)$">
Header set Expires "Fri, 01 Jan 2010 00:00:00 GMT"
</FilesMatch>
...