Переменная для proxy_set_header

Alex Vorona voron at amhost.net
Wed May 28 00:17:00 MSD 2008


Alexey V. Karagodov пишет:
> 
> On 27.05.2008, at 21:59, N M wrote:
> 
>> Добрый день
>>
>> Входящий URI разбивается на переменные, которые потом переставляются и
>> обрабатываются, среди этих переменных есть имя домена - которое 
>> необходимо
>> поставить в proxy_set_header.
>>
>> Как заставить переменную $2 передатся в качестве аргумента для
>> proxy_set_header?
>> В логах она вываливается как undefined variable "newhost"..
>>
>> server {
>>        listen      ip.ip.ip.ip:80;
>>        server_name  domain.com www.domain.com;
>>
>>        access_log  /var/log/nginx/domain.com_access.log ;
>>        error_log   /var/log/nginx/domain.com_error.log info;
>>
>>        location / {
>>                rewrite ^/([^/]+)/([^/]+)/([^/]+)$ /$1/?$3 break;
> rewrite ^/([^/]+)/([^/]+)/([^/]+)$ /$1/?$3 last;
> 
>>
>>                set $newhost $2;
>>        proxy_set_header Host $newhost ;
> break;
>>
>>        proxy_pass http://path_to_proxying;
> как то так ...
>>
>>
>> Может быть, т.к. после rewrite стоит break, сервер заканчивает
>> обработку\присваивание переменных?
>>
>> Подскажите пожалуйста.
>>
>> Спасибо.
> 
> 
> 
и при last и при break в rewrite следующий за ним set не должен отработать в 
случае match в rewrite





More information about the nginx-ru mailing list