Всем привет дорогие друзья. Совсем недавно я рассказывал статью о том, как можно проверить скорость загрузки сайта при помощи сервиса PageSpeed Insights от компании Google. То есть, данный сервис нам предоставлял какие-то рекомендации для того чтобы увеличить скорость загрузки страниц сайта для мобильных устройств, а также обычных компьютеров и ноутбуков.
Так вот, данный сервис почти всегда и на все дает такую рекомендацию, чтобы Вы использовали кеш браузера пользователя (то есть того, кто заходит на Ваш ресурс). Поэтому в данной статье мы и рассмотрим алгоритм кеширования для хостингов, которые работают под управлением Apache. Вообще, таких серверов большинство (см. преимущества Linux и Windows хостингов). Для этих целей нам понадобится файл .htaccess, при помощи которого мы и будем задавать правила для хостинга. Я думаю, что Вы знаете, где он находится (в корневой папке хостинга, обычно это public_html). Поэтому Вы его копируете себе на компьютер и открываете через текстовый редактор, например Блокнот. Только перед тем, как его редактировать, не забудьте сделать его копию.
Если в нем уже присутствовали какие-то данные, то следующий код Вам придется добавлять в конец файла .htaccess, а он будет следующим:
# кеширование в браузере на стороне пользователя
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access 7 days"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/html "access plus 7 day"
ExpiresByType text/x-javascript "access 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/x-icon "access 1 year"
ExpiresByType application/x-shockwave-flash "access 1 year"
</IfModule>
# Cache-Control
<ifModule mod_headers.c>
# 30 дней
<filesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
# 30 дней
<filesMatch "\.(css|js)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
# 2 дня
<filesMatch "\.(xml|txt)$">
Header set Cache-Control "max-age=172800, public, must-revalidate"
</filesMatch>
# 1 день
<filesMatch "\.(html|htm|php)$">
Header set Cache-Control "max-age=172800, private, must-revalidate"
</filesMatch>
</ifModule>
Я не буду подробно рассказывать про данный код, а скажу поверхностно, ведь не всем это будет интересно. При помощи данного кода в файле .htaccess мы делаем так, что когда пользователь заходит на Ваш сайт (первый раз), то все его файлы скачиваются на компьютер, при последующем заходе на сайт, эти файлы загружаются не с Вашего хостинга или сервера, а уже с компьютера пользователя (то есть, используются локальные файлы).
Каждый тип файла Вашего ресурса будет храниться на компьютере пользователя определенное время, по истечению которого эти файлы будут обновляться на компьютере пользователей. Этим самым Вы не только ускорите свой сайт, но и сможете сэкономить трафик для своего хостинга (это будет преимуществом, если он у Вас платный).
Вот еще мы рассмотрели один метод оптимизации сайта, используйте кеш браузера пользователя и Ваш сайт будет намного удобнее, уютнее и лучше.
Также советуем почитать на PressDev.RU
Короткая ссылка: http://pressdev.ru/?p=4551