Nginx передает подкаталог в качестве базового URL для Kohana
После настройки нескольких приложений Kohana на Nginx мне нужно настроить параметр "базовый URL" для каждого приложения. До того, когда я использовал Apache с .htaccess
это было легко (RewriteBase
) но в Nginx я нашел следующее решение:
location /sites/site1/ {
try_files $uri /sites/site1/index.php?$args;
}
location /sites/site2/ {
try_files $uri /sites/site2/index.php?$args;
}
...etc...
Теперь, поскольку я хотел бы добавить еще много приложений, я бы предпочел location
блокировать передачу приложения Kohana на правильный путь. Я пробовал что-то вроде этого (это не будет работать для меня):
location /sites/([a-z0-9\-]+)/ {
try_files $uri /sites/$1/index.php?$args;
}
Как вы можете видеть, я не эксперт по регулярным выражениям, но я хочу передать любой существующий подкаталог с именами, содержащими буквенно-цифровые символы и тире в соответствующий базовый путь. Благодарю.
1 ответ
Вам нужен префикс для location
сделать сопоставление регулярных выражений. Попробуй это:
location ~* ^/sites/([a-z0-9\-]+)/ {
try_files $uri /sites/$1/index.php?$args;
}