2.4.1.1.5. Браузерное кеширование статики

Внимание!

Настройки кеширования влияют только на ресурсы, которые браузер загружает с нашего сервера. Для ресурсов, которые загружаются со сторонних сервисов, кеширование нужно настраивать непосредственно на стороне этих сервисов.

Использование браузерного кеширования может ускорить загрузку сайта при повторных посещениях и снизить количество запросов к серверу. Суть заключается в том, что при первом посещении сайта сервер сообщает браузеру, как долго ему нужно хранить в своём кеше копии загруженных статических файлов. При повторном обращении к сайту браузер уже использует сохранённые в кеше локальные копии файлов и не обращается к серверу для их получения.

  1. Откройте раздел «Настройки сайта».
  2. В поле «Кеширование» укажите период хранения статических ресурсов в браузере клиента и сохраните изменения:
    Выберите 1, 3, 8 или 12 часов, 1 день, 1 неделя, 1, 3 или 6 месяцев, либо 1 год:
    Выберите «Свой вариант (в часах)» и укажите нужный период в часах:
  3. Подождите примерно 15-30 минут, пока изменения вступят в силу.

Настройка кеширования через панель управления задаёт единый период для всех типов статических файлов. Если для определённых типов файлов необходимо установить индивидуальные периоды кеширования, выполните следующее:

  1. Уберите из списка статических файлов расширения файлов, для которых хотите установить индивидуальный период кеширования.
  2. Добавьте директивы кеширования в файл .htaccess.

Примеры директив кеширования:

# кешировать файлы html и htm на сутки
<FilesMatch "\.(html|htm)$">
  Header set Cache-Control "max-age=43200"
</FilesMatch>
# кешировать файлы css и js на неделю
<FilesMatch "\.(css|js)$">
  Header set Cache-Control "max-age=604800"
</FilesMatch>
# отключить кеширование файлов txt и zip
<FilesMatch "\.(txt|zip)$">
  Header unset Cache-Control
</FilesMatch>

ExpiresActive On
# кеш по умолчанию 30 секунд
ExpiresDefault "access plus 30 seconds"
# кешировать файлы html и htm на сутки
ExpiresByType text/html "access plus 43200 seconds"
# кешировать файлы css и js на неделю
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType application/javascript "access plus 604800 seconds"
Содержание

    (1)