В зависимости от типа хостинга, необходимо сделать:
В файл .htaccess, расположенный в корневой папке сайта необходимо добавить в конец файла следующие директивы:
AddType image/webp webp <IfModule mod_expires.c> ExpiresActive on ExpiresByType image/jpeg "access plus 30 day" ExpiresByType image/gif "access plus 30 day" ExpiresByType image/png "access plus 30 day" ExpiresByType image/webp "access plus 30 day" ExpiresByType text/css "access plus 30 day" ExpiresByType application/javascript "access plus 30 day" </IfModule> <IfModule mod_headers.c> <FilesMatch "\.(js|css|txt)$"> Header set Cache-Control "max-age=31536000" </FilesMatch> <FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png|webp|woff|woff2|svg|ttf|otf|eot)$"> Header set Cache-Control "max-age=31536000" </FilesMatch> </IfModule>
Напишите в техподдержку вашего хостинг-провайдера письмо следующего содержания:
Добрый день. Прошу в настройки хоста [адрес вашего сайта] nginx добавить директиву следующего содержания: location ~* ^.+.(jpg|jpeg|gif|png|ico|css|bmp|js|woff|woff2|webp|ttf|svg|eot)$ { expires 30d; add_header Cache-Control max-age=31536000; } Это необходимо для правильного управления кешированием на стороне браузера посетителя. Заранее благодарю.
В некоторых хостинг-панелях есть возможность редактировать конфигурационный файл nginx. Если такая возможность есть, то вышеуказанную директиву вы можете добавить самостоятельно.
В конфигурационный файл хоста, либо в общий включаемый файл конфигурации для всех хостов, добавьте следующую директиву:
location ~* ^.+.(jpg|jpeg|gif|png|ico|css|bmp|js|woff|woff2|webp|ttf|svg|eot)$ { expires 30d; add_header Cache-Control max-age=31536000; }
Так же вам необходимо проверить, что файлы webp, woff2, woff, ttf, otf, eot, jpg, jpeg, png, gif, css, js обрабатываются как статичные файлы (т.е. отдаются непосредственно с диска без обращения к бекэнд серверу)