Как изменить время кеширования статических файлов

Перейти к полному списку частых вопросов

По умолчанию сервер хостинга не добавляет заголовков Expires. И для nginx и для Apache.

Если вы хотите, чтобы статические файлы кешировались в браузере посетителя - необходимо

  1. В контрольной панели переключить в разделе Приложения на nginx + Apache 2.4
  2. Добавить установку заголовков в .htaccess

Важно! Apache должен быть именно версии 2.4. Подойдет любой из списка. Если у вас только статика - лучше выбрать Apache 2.4 + mod_fastcgi, если используется пхп - то лучше выбрать Apache 2.4 + php-fpm с нужной версией пхп.

Пример установки заголовков Expires в .htaccess:

<IfModule mod_expires.c>
    ExpiresActive on
    #ExpiresDefault "access plus 1 seconds"
    ExpiresByType image/jpeg "access plus 8 day"
    ExpiresByType image/gif "access plus 8 day"
    ExpiresByType image/png "access plus 8 day"
    ExpiresByType image/x-icon "access plus 8 day"
    ExpiresByType image/svg+xml "access plus 8 day"

    ExpiresByType application/x-shockwave-flash "access plus 2692000 seconds"
    ExpiresByType text/css "access plus 8 day"

    ExpiresByType text/javascript "access plus 8 day"
    ExpiresByType application/x-javascript "access plus 8 day"
    ExpiresByType application/javascript "access plus 8 day"

    #ExpiresByType text/html "access plus 600 seconds"
    #ExpiresByType application/xhtml+xml "access plus 600 seconds"
</IfModule>
Тэги: htaccess