Давно пользуюсь замечатльным сервисом от Google Insights
Пользоваться сервисом очень легко, переходим по ссылке выше, вводим адрес проверяемого сайта жмем "Анализировать" и ждем результат.
Получаем ответ вида
Проанализировав мой сайт гугл дал положительную оценку, в так называемом отчете довольно подробно описано что надо исправить и почему. Можно ознакомится перейдя по ссылкам.
В этой же статье мы рассмотрим кеширование кэширования через файл .htaccess
Он позволяет контролировать и изменять заголовки HTTP-запросов и HTTP-ответов. Вся его суть сводится к простой работе, если браузер уже один раз загрузил картнку css фаил и т.д. то при следующем открытии этого сайта брать уже фаилы не с сервера а с локального компьютера, конечно если время кеширования (хранения) фаила не закончилось. Если время вышло то браузер клиента сделает снова запрос и загрузит фаил.
Использовать его достачно просто. Ниже приведу один из способов.
<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
Для файлов с указанными расширениями в конструкции FilesMatch устанавливается отдаваемый сервером заголовок Cache-Control и переменная max-age, в которой указывается время сохранения файлов в кеше в секундах. Добавьте или удалите нужные расширения фаилов.
Так же есть возможность запретить кеширование например для фаилов с расширением PHP
<FilesMatch ".(pl|php|cgi|spl|scgi|fcgi)$">
Header unset Cache-Control
</FilesMatch>
Есть еще одни способ управлять кэшированием - это воспользоваться модулем expires. Суть его точно такая же он изменяет заголовки передаваемые браузеру, сообщаю что нужно кешировать а что нет, но в отличии от так скажем стандартного варианта продолжительность хранения данных в кэше может быть установлена по времени, по последнему изменению файла или по времени доступа клиента.
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month"
ExpiresByType image/gif "access plus 2 months"
ExpiresByType image/jpeg "access plus 2 months"
</IfModule>
Как вы могли заметить синтаксис не много отличается от предыдущего варианта.
В этом примере мы включаем модуль, устанавливаем кэширование по умолчанию на 1 месяц, а далее назначаем для файлов с расширением gif
и jpg
врема хранения в кэше plus 2 months
. Время можно указать в годах, месяцах, неделях, днях, часах, минутах, секундах. В том числе можно использовать вариант вида:
ExpiresByType text/html "access plus 1 month 15 days 2 hours"
ExpiresByType image/gif "modification plus 5 hours 3 minutes"