Re: Переменная в proxy pass и изменение пути
Igor Sysoev
igor на sysoev.ru
Ср Июн 1 10:46:45 MSD 2011
On Tue, May 31, 2011 at 05:33:22PM -0400, Ncs wrote:
> Здравствуйте, есть такая проблемка
> location / {
> set $h "site.ru";
> proxy_pass http://$h;
> resolver 8.8.8.8;
> }
> это работает, запросы /aaa идут на site.ru/aaa
>
> Допустим, надо чуть-чуть поменять путь
> location /new/ {
> rewrite /new/(.+)$ /$1 break;
> proxy_pass http://site.ru;
> }
> это тоже работает, запросы /new/aaa идут на
> site.ru/aaa
Здесь rewrite не нужен:
location /new/ {
proxy_pass http://site.ru/;
}
> А вот комбинация 2 вариантов уже не
> работает
> location /new/ {
> set $h "site.ru";
> rewrite /new/(.+)$ /$1 break;
> proxy_pass http://$h;
> resolver 8.8.8.8;
> }
> запросы /new/aaa идут site.ru/new/aaa
>
> Как задать хост в переменной и изменить
> путь?
location /new/ {
location ~ ^/new(.+)$ {
proxy_pass http://$h$1;
}
}
--
Igor Sysoev
Подробная информация о списке рассылки nginx-ru