У меня несколько проектов на базе redmine (около десятка), использую следующий конфиг:
location / {
passenger_enabled on ;
passenger_base_uri /aaa ;
passenger_base_uri /bbb ;
passenger_base_uri /ccc ;
if ($uri ~* "^/aaa/") {
rails_env "aaa" ;
}
if ($uri ~* "^/bbb/") {
rails_env "bbb" ;
}
if ($uri ~* "^/ccc/") {
rails_env "ccc" ;
}
}
Как видите, для десяти таких конфигов будет очень много дублирования.
В связи с чем несколько вопросов:
1. Как можно сделать установку RAILS_ENV в зависимости от пути (sub-uri)?
2. Пытаюсь написать так:
if ($uri ~* "^/(aaa|bbb|ccc)/") {
rails_env "$1" ; # или $1 или '$1'
}
все эти варианты не проходят :( Почему-то вместо $1 не подставляется совпадение и $1 так и остается $1; из-за чего passenger ищет environments/$1.rb. Как правильно задать подстановку?