Кэширование Apache с проблемой .htaccess (неверный заголовок даты?) - PullRequest
2 голосов
/ 08 июня 2011

Я использую .htaccess для кэширования файлов js / css / etc на сайте. Все работает нормально, но по некоторым причинам мои страницы тоже кэшируются. Я посмотрел в заголовки, и это работает так:

  1. Браузер запрашивает страницу http://poko.lt/up
  2. Сервер отвечает с 301 до http://poko.lt/up/ (с заголовками Дата и Последнее изменение, равными текущему времени)
  3. Браузерные запросы http://poko.lt/up/
  4. Сервер отвечает страницей и заголовками «Дата» и «Последнее изменение», равными моему последнему принудительному обновлению (например, вчера), но заголовок Cache-control в порядке (max-age = 0)
  5. Я получаю старую версию страницы: /

Мой .htaccess выглядит так:

# Turn on Expires and set default to 0
ExpiresActive On
ExpiresDefault A0

# 1 YEAR
<FilesMatch "\.(jpg|jpeg|png|gif|svg|eot|ttc|ttf|otf)$">
ExpiresDefault A29030400
Header append Cache-Control "public"
Header unset Last-Modified
Header unset ETag
FileETag None
</FilesMatch>

# 2 WEEKS
<FilesMatch "\.(css|js|swf)$">
ExpiresDefault A1209600
Header append Cache-Control "proxy-revalidate"
Header unset Last-Modified
Header unset ETag
FileETag None
</FilesMatch>

# NO CACHE
<FilesMatch "\/$">
ExpiresDefault A0
Header append Cache-Control "proxy-revalidate"
Header unset Last-Modified
Header unset ETag
FileETag None
</FilesMatch>

И его можно протестировать на веб-сайте http://poko.lt (три красных значка в верхней средней части страницы - те, которые вызывают проблемы). Я использую FF4 и проверяю заголовки с помощью Firebug.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...