Недавно я развернул веб-сайт на VPS, который поддерживает Apache2, и работал над рекомендациями по улучшению производительности YSlow. Среди этих улучшений использовались mod_deflate и mod_expires, и поскольку у меня есть доступ к корню, я могу напрямую редактировать конфигурационные файлы Apache.Apache2 mod_expires не работает
mod_deflate сейчас работает, но у меня возникли проблемы с mod_expires так вот что я сделал:
включения истекает модуль и перезапустить сервер
a2enmod expires
service apache2 restart
создать новый файл «expires.conf "под mods_enabled, который содержит следующие элементы:
<IfModule mod_expires.c>
# Enable expirations
ExpiresActive On
# Default directive
ExpiresDefault "access plus 1 month"
# My favicon
ExpiresByType image/x-icon "access plus 1 year"
# Images
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
# CSS
ExpiresByType text/css "access plus 1 month"
# Javascript
ExpiresByType application/javascript "access plus 1 year"
</IfModule>
Однако при проверке на различных браузеры Dev Tools под сетью, файлы показывают Управление кэша в None ,
Я думал об использовании моего сценария mod_expires выше в .htaccess, расположенном в корневом каталоге моего сайта:/var/www/sitename/public_html, поскольку настройки в .htaccess переопределяют любые предыдущие настройки, сделанные в конфигурационных файлах apache ,
Для этого я включил htaccess в apache2.conf.
Я тестировал, что мой файл htaccess действительно работает, охотно внося в него ошибку (прокомментировал открытый тег IfModule). Обновление браузера дало мне ошибку сервера 500. Так обрабатывался файл htaccess.
К сожалению, инструменты для браузера dev по-прежнему не имеют контроля за кешем, и у меня заканчиваются идеи.
Я что-то упустил? Спасибо!
Очевидный вопрос, но я предполагаю, что вы включили mod_expiries включают линию (часто закомментирована) в противном случае, что IfModule выражение не будет и ни одна конфигурация не будет считана. –