Re: Nginx, regex-домены, "root /your/app/$1/htdocs"

Dmitry Koterov dmitry at koterov.ru
Sat Nov 7 01:05:31 MSK 2009


> Все переменные (и $1 не исключение) подставляются в тот момент,
> когда строка содержащая переменные реально используется.
>
ИМХО для $1, $2 и т.д. такое поведение как раз не очень логично... но,
наверное, по-другому сделать архитектурно сложнее.


> > Я ожидал, что в конструкции
> >
> > set $docroot /your/app/$1/htdocs;
> >
> > в $docroot попадет уже ОКОНЧАТЕЛЬНАЯ строка, в которой нет упоминаний $1
> и
> > т.д... Аналогично, что в
>
> Да, попадёт.  Когда отработает соответствующий set.  Это случится
> где-то в районе фазы серверных rewrite'ов (если set на уровне
> server{}).
>
> Шутка состоит в том, что эта самая фаза - выполняется повторно при
> очередном поиске совпадения между uri и location (после rewrite ...
> last).  И там снова отрабатывает set.  И заново ставит $docroot,
> но на этот раз в $1 уже может быть совсем не то что ожидалось.
>
Спасибо, примерно понятно.
Можно ли (для истории) попросить Вас привести пример конфига, иллюстрирующий
этот эффект?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20091107/533e7bbf/attachment.html>


More information about the nginx-ru mailing list