У меня есть приложение, которое работает в нескольких различных средах, иногда оно находится на верхнем уровне сайта, а иногда оно работает внутри псевдонима.
Когда это прямое извлечение нормального документа, мой .htaccess выглядит примерно так:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /index.php [NC,L]
Я развернул сайт в среде с псевдонимом, подобным следующему:
Alias /foo /path/to/my/application/
Я обнаружил, что мне нужно изменить .htaccess на следующее:
RewriteEngine On
RewriteBase /foo
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /foo/index.php [NC,L]
У меня вопрос: как я могу переписать мой .htaccess, чтобы перезапись работала одинаково, независимо от того, находится ли она под псевдонимом или нет? Есть ли какой-то способ, которым я могу определить, был ли установлен псевдоним, или какой-то другой способ выражения RewriteRules?