Если контент вашего сайта обновляется нечасто, а хостинг недорогой, будет полезно снизить нагрузку на сервер с помощью настроек htaccess.
Впрочем, любого сайт есть контент, который более или менее статичен, даже если это популярный форум или блог. Например, те же картинки, или файлы стилей. В htaccess можно их кэшировать с помощью модулей mod_headers и mod_expires. У провайдера, как правило, стоит один из этих модулей, поэтому привожу настройки для обоих.
Если на сервере работают оба модуля, то предпочтительнее использовать модуль mod_headers. Чтобы проверить, какой из модулей у вас включен, уберите условие ifModule и поочередно вставляйте в htaccess настройки сначала от одного, потом от другого модуля. Если модуль не работает, выдаст ошибку 500.
Впрочем, любого сайт есть контент, который более или менее статичен, даже если это популярный форум или блог. Например, те же картинки, или файлы стилей. В htaccess можно их кэшировать с помощью модулей mod_headers и mod_expires. У провайдера, как правило, стоит один из этих модулей, поэтому привожу настройки для обоих.
Код:
<ifModule mod_headers.c>
#кэшировать html и htm файлы на сутки
<FilesMatch "\.(html|htm)$">
Header set Cache-Control "max-age=86400"
</FilesMatch>
#кэшировать css и javascript на месяц (выставьте меньше, если сайт часто дорабатывается)
<FilesMatch "\.(js|css)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
#кэшировать изображения на месяц
<FilesMatch "\.(gif|jpg|jpeg|png)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
#отключить кэширование для динамических страниц
<FilesMatch "\.(php)$">
Header unset Cache-Control
</FilesMatch>
</IfModule>
<ifModule mod_expires.c>
ExpiresActive On
#по умолчанию кеш в 60 секунд
ExpiresDefault "access plus 60 seconds"
#кэшировать изображения на месяц
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
#кэшировать css и javascript на одну неделю
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 604800 seconds"
ExpiresByType application/javascript "access plus 604800 seconds"
ExpiresByType application/x-javascript "access plus 604800 seconds"
#кэшировать html и htm файлы на один день
ExpiresByType text/html "access plus 43200 seconds"
#кэшировать xml файлы на день
ExpiresByType application/xhtml+xml "access plus 86400 seconds"
</ifModule>