Как с помощью .htaccess перенаправить все запросы на index.php за исключением статических файлов?
Пытаюсь добиться следующего:
Все запросы, за исключением папки /static, должны быть перенаправлены на index.php. Если запрашивается папка /static, то надо запрос перенаправлять на папку /src/App/public/static/ незаметно (без смены url).
Пример:
http://mydomain.ru/article/12 - index.php
http://mydomain.ru/contact - index.php
http://mydomain.ru/... - index.php
http://mydomain.ru/static/css/... - в папку /src/App/public/static/css/...
http://mydomain.ru/static/libs/... - в папку /src/App/public/static/libs/...
Мне нужно этого добиться, потому что публичные файлы проекта хранятся не рядом с файлом index.php, а в другой папке (/src/App/public/static/)
Пытался использовать этот код:
RewriteEngine on
RewriteCond %{REQUEST_URI} ^(?!/static/).+ [NC]
RewriteRule (.*) index.php [L]
RewriteRule ^/static/(.*)$ /src/App/public/static/$1 [L,NC]
и он действительно перенаправляет все запросы на index.php, только если попробовать обратиться к статическому файлу по url http://mydomain.ru/static/css/reset.css выдается 404.
Структура проекта выглядит так:
/src
- /App
- /public
- /static
- /css
- /libs
- /...
.htaccess
index.php