В зависимости от типа хостинга, необходимо сделать:
В файл .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 обрабатываются как статичные файлы (т.е. отдаются непосредственно с диска без обращения к бекэнд серверу)