На моем локальном веб-сервере разработки есть следующая структура каталогов:
/www
/f3-app-1
/application
/config
/core
/resources
/ui
/index.php
/f3-app-2
...
/f3-app-3
...
Я храню все свои веб-приложения (f3-app-1, f3-app-2, ...) в подпапках корня документа. Я получаю доступ к приложению с помощью http://localhost/f3-app-1/
и не использую виртуальные хосты.
Мне нужно перенаправить все (кроме файлов в ui
и resources
) в index.php. Для этого я использую что-то вроде следующего в файле .htaccess:
Options -Indexes
RewriteEngine On
RewriteCond %{REQUEST_URI} \.ini$
RewriteRule \.ini$ - [R=404]
RewriteCond %{REQUEST_URI} !^/f3-app-1/ui/
RewriteCond %{REQUEST_URI} !^/f3-app-1/resources/
RewriteRule .* index.php [L,QSA]
Рабочий сервер моего хостинг-провайдера использует виртуальные хосты для разрешения нескольких веб-сайтов. После передачи файлов на их веб-сервер мне нужно изменить файл .htaccess на что-то вроде:
...
RewriteCond %{REQUEST_URI} !^/ui/
RewriteCond %{REQUEST_URI} !^/resources/
RewriteRule .* index.php [L,QSA]
Есть ли способ заставить эти правила mod_rewrite работать относительно веб-приложения или каталога .htaccess
?