У меня есть .htaccess файл:
Options +FollowSymLinks
DirectorySlash On
RewriteEngine On
# Remove trailing slash for non directories
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /mydir%1/$1 [R,L=303]
# Make direct files accessible
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^base.php.*$
RewriteRule ^([^\n]+)|(.*)$ base.php?___ROUTE=$1 [QSA,END]
, который имеет следующие режимы перенаправления:
- ✔️
d.com/mydir
→ d.com/mydir/
- ✔️
d.com/mydir/nothing
→ пробег - ✔️
d.com/mydir/nothing/
→ d.com/mydir/nothing
- ❌
d.com/mydir/exist_dir
→ d.com/mydir/exist_dir/?___ROUTE=exist_dir
- ❌
d.com/mydir/exist_dir/
→ пробег - ✔️
d.com/mydir/exist_file.css
→ запуск - ✔️
d.com/mydir/exist_file.css/
→ d.com/mydir/exist_file.css
К run Я имею в виду, что он отвечает на содержимое файла или выполняет base.php?___ROUTE=$1
Теперь у меня проблема и вопрос
Задача :
Я не знаю, как исправить перенаправление номер 4.
Номер 5 должен перенаправить на d.com/mydir/exist_dir
.
И номер 4 должен выполнить base.php?___ROUTE=$1
вместо перенаправления
Вопрос :
Как использовать текущее имя каталога в .htaccess
вместо записи его имени в каждом проекте?
Я имею в виду /mydir
в RewriteRule ^(.*)/$ /mydir%1/$1 [R,L=303]