Правила перезаписи .htaccess, перенаправляющие все запросы слишком широко; хотите исключить статические ресурсы на том жApache

Anonymous
Правила перезаписи .htaccess, перенаправляющие все запросы слишком широко; хотите исключить статические ресурсы на том ж

Сообщение Anonymous »

Я пытаюсь создать файл правил .htaccess для приложения, размещенного на Apache, который перенаправляет все URI на определенный скрипт, за исключением случаев, когда URI ссылается на определенные статические ресурсы.
/>Одна из проблем заключается в том, что я хотел бы свернуть URI, чтобы в URI никогда не упоминалась подпапка; лучший способ проиллюстрировать это — показать макет файла:
app/
---|.htaccess
---|public/index.php
---|css/
---|css/style.css
---|images/
---|images/logo.png
-- -|js/
---|js/main.js
Я хотел бы перенаправить каждый URI на index.php в общей папке, за исключением случаев, когда он ссылается на файл в подкаталоге css, images или js.
Мой рабочий .htaccess находится здесь:

Код: Выделить всё

   Options All -Indexes
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} /public/([^\s?]*) [NC]
RewriteRule ^ %1 [L,NE,R=302]
RewriteRule ^(.*)$ public/index.php?$1 [L,QSA]
И почти работает, правильно перенаправляя все URI на правильный скрипт, но я не могу создать правила, которые перенаправляют статические ресурсы, т. е. URI для CSS должен быть /css/style.css (в настоящее время , /public/css/style.css работает так, как ожидалось).
Я пытался изменить .htaccess, чтобы он требовал точных совпадений, но, похоже, это не дало того, на что я надеялся. .

Подробнее здесь: https://stackoverflow.com/questions/785 ... exclude-st

Вернуться в «Apache»