ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

map, if и proxy set header



Добрый день коллеги!

Имеется задача, отправлять некоторые запросы к /test.cgi отобранные по 
аргументу id в $args на другой бекэнд , не переписывая исходный url.

Имеется следующая конструкция:

map $arg_id $new {
        default 0;
        00301 1;
        02340 1;
        ...
}

location /test.cgi {
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $remote_addr;

        if ($new) {
            proxy_pass https://192.168.1.2?$args;
            #proxy_set_header Host "new.host.name";
        }
        proxy_pass http://192.168.1.1;
}

Все вроде хорошо, все перенаправляется. Но не загружаются ни css ни картинки ни 
скрипты. Естественно, это по тому, что картинки оно ищет на другом сервере где 
таковых нет (url то мы не переписали). При попытке переписать proxy_set_header 
Host "new.host.name"; в  контексте if {} выдает ошибку : "proxy_set_header" 
directive is not allowed here...

Может кто сталкивался с подобным? Никак не могу найти правильное решение.

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,16926,16926#msg-16926




 




Copyright © Lexa Software, 1996-2009.