Почему htaccess не обрабатывает css-файлы?

Структура системы следующая:
/site
index.php
/sites
много html, css, js, png, jpg и других файлов

То, что лежит в sites представляет собой статичную копию сайта. Файл /site/index.php открывает одну из страниц лежащую в /sites, попутно подменяя все ссылки в ней с original-site.ru/(.*) на /sites/$1. В корне есть .htaccess со следующим содержимым:

RewriteEngine On
RewriteRule ^sites/(.*\.(html|css))$ /site/?url=$1 [R]


В итоге при обращении по адресу
/sites/index.html
переходим по адресу
/site/?url=index.html,
а по адресу
/sites/styles.css
так там и остаёмся.

Гугл из полезного рассказал только:
"Для ускорения работы сайтов они (css-файлы) обрабатываются, минуя основной веб-сервер и без анализа файлов .htaccess.",
но где это можно настраивать так и не ответил.

Верна ли идея с ответом гугла, если да, то где можно исправить, если нет, то в чем тогда проблема?
  • Вопрос задан
  • 3662 просмотра
Пригласить эксперта
Ответы на вопрос 3
У меня это правило работает как на .html, так и на .css.
Возможно проблема не в .htaccess, а в файле /site/index.php.
Ответ написан
BuriK666
@BuriK666
Компьютерный псих
Возможно на сервере стоит nginx, который отдает статические файлы напрямую, без участия apache.
Ответ написан
@sgrogov Автор вопроса
Nginx кеширует статические файлы, и они не обрабатываются apache'м.
Стоит перенастроить nginx, исключив нужные папки, но в моём случае отсутствия доступа к настройкам сервера придется решать изменением логики приложения.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы