Re: сбрасывается выделение в Location
Maxim Dounin
mdounin на mdounin.ru
Пт Июл 22 18:23:52 UTC 2011
Hello!
On Fri, Jul 22, 2011 at 09:06:31PM +0300, Vasil Mikhalenya wrote:
> Уважаемые, подскажите где описано данное поведение
>
> location ~ ^/node-([0-9])$ {
> rewrite ^ /status break; #rewrite сбрасывает выделение в $1,
> соответсвенно получаем unknown host при fastcgi
Переменная $1 - это выделение из последнего выполявшегося
регулярного выражения. Поскольку rewrite выполняет регулярное
выражение ("^"), и в этом регулярном выражении нет сработавших
выделений, то $1 будет пустым.
> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
> include fastcgi_params;
> fastcgi_pass node-$1.local.worldoftanks.ru:9000;
>
> Помогает set перед реврайтом.
Правильнее использовать именованные выделения:
location ~ ^/node-(?<node>[0-9])$ {
...
fastcgi_pass node-${node}.local.worldoftanks.ru:9000;
}
> Но интересно, где это задокументировано.
Явно - подозреваю, что нигде.
Maxim Dounin
Подробная информация о списке рассылки nginx-ru