Управление кэшем / макс. возраст, не работающий на мой сайт

Для ускорения моего сайта Telium, я реализовал все .htaccess рекомендации от этого сайта. Однако, когда я просматриваю к своему веб-сайту с открытыми инструментами разработчика (в Chrome), я вижу, что все изображения на моих страницах повторно загружаются каждый раз, когда я обновляюсь. Странно, заголовки выглядят правильными - итак, почему изображения не кэшируют?

Мой .htaccess расположен в корне веб-сайта и похож на это:

# BEGIN Expire headers
<ifModule mod_expires.c>
  ExpiresActive On
  ExpiresDefault "access plus 5 seconds"
  ExpiresByType image/x-icon "access plus 2592000 seconds"
  ExpiresByType image/jpeg "access plus 2592000 seconds"
  ExpiresByType image/png "access plus 2592000 seconds"
  ExpiresByType image/gif "access plus 2592000 seconds"
  ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
  ExpiresByType text/css "access plus 604800 seconds"
  ExpiresByType text/javascript "access plus 216000 seconds"
  ExpiresByType application/javascript "access plus 216000 seconds"
  ExpiresByType application/x-javascript "access plus 216000 seconds"
  ExpiresByType text/html "access plus 600 seconds"
  ExpiresByType application/xhtml+xml "access plus 600 seconds"
</ifModule>
# END Expire headers
<ifModule mod_deflate.c>
  AddOutputFilterByType DEFLATE text/html text/xml text/css text/plain
  AddOutputFilterByType DEFLATE image/svg+xml application/xhtml+xml application/xml
  AddOutputFilterByType DEFLATE application/rdf+xml application/rss+xml application/atom+xml
  AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript application/json
  AddOutputFilterByType DEFLATE application/x-font-ttf application/x-font-otf
  AddOutputFilterByType DEFLATE font/truetype font/opentype
</ifModule>
# BEGIN Cache-Control Headers
<ifModule mod_headers.c>
  <filesMatch ".(ico|jpe?g|png|gif|swf)$">
    Header set Cache-Control "public"
  </filesMatch>
  <filesMatch ".(css)$">
    Header set Cache-Control "public"
  </filesMatch>
  <filesMatch ".(js)$">
# was private  
    Header set Cache-Control "public"
  </filesMatch>
  <filesMatch ".(x?html?|php)$">
    Header set Cache-Control "private, must-revalidate"
  </filesMatch>
</ifModule>
# END Cache-Control Headers
0
задан 27 May 2015 в 16:08
1 ответ

Вместо «обновления страницы» попробуйте перейти на другую страницу и щелкнуть ссылку, чтобы перейти на страницу, или скопируйте ссылку в новую вкладку и нажмите ввод.

Я обнаружил, что когда вы нажимаете кнопку «Обновить», Chrome предполагает, что пользователь думает, что что-то устарело, поэтому он целенаправленно игнорирует кеш и загружает новые данные.

1
ответ дан 4 December 2019 в 16:56

Теги

Похожие вопросы