Почему мой сервер всегда возвращает Last Modified как мое текущее время? - PullRequest
1 голос
/ 07 апреля 2011

Итак, установите в моем файле vhost.conf значение Expires:

ExpiresActive On
ExpiresDefault "access plus 4 hours"
ExpiresByType application/javascript "access plus 10 years"
ExpiresByType application/x-javascript "access plus 10 years"
ExpiresByType text/javascript "access plus 10 years"
ExpiresByType text/html "access plus 1 hour"
ExpiresByType text/xml "access plus 1 hour"
ExpiresByType text/css "access plus 10 years"
ExpiresByType text/plain "access plus 1 hour"
ExpiresByType image/gif "access plus 10 years"
ExpiresByType image/jpg "access plus 10 years"
ExpiresByType image/jpeg "access plus 10 years"
ExpiresByType image/png "access plus 10 years"
ExpiresByType image/bmp "access plus 10 years"
ExpiresByType application/x-shockwave-flash "access plus 10 years"

Я думаю, что это работает, так как заголовки ответа возвращают набор Cache-control в будущее:

Cache-Control   max-age=315360000
Expires Sun, 04 Apr 2021 12:27:12 GMT

Но я смотрю на вкладку Cache в Firefox, и она не выглядит приятной

Last Modified   Thu Apr 07 2011 20:27:08 GMT+0800 (Malay Peninsula Standard Time)
Last Fetched    Thu Apr 07 2011 20:27:09 GMT+0800 (Malay Peninsula Standard Time)
Expires      Sun Apr 04 2021 20:27:07 GMT+0800 (Malay Peninsula Standard Time)

Вот что происходит. Каждый раз, когда я перезагружаю свой веб-сайт, заголовок Last Modified всегда устанавливается на мое текущее время. Я не изменял файлы, так почему он возвращает мое текущее время?

1 Ответ

3 голосов
/ 07 апреля 2011

Это скрипт PHP, вывод которого был сгенерирован при запуске скрипта, поэтому вывод никогда не существовал ранее, что означает, что сервер не мог прикрепить к нему заголовок кэша.

You 'Вам нужно будет установить время последнего изменения самостоятельно с помощью вызова header().

...