ПРОЕКТЫ 


  АРХИВ 


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]

Re: Rewrite в контексте одного server_name



On Sun, Sep 07, 2008 at 12:47:59AM +0400, Andrey Korolyov wrote:

> Имеется следующая конфигурация:
> 
>                 server_name    example.com www.example.com;
>                 location  / {
>                 ....
>                 }
>                 location /location1/ {.....}
>                 location /location2/ {.....}
> 
> Внутри конфига корня должны находиться редиректы, переводящие, в случае
> использования www.example.com/blah на www.example.com/location1 и в случае
> использования example.com/blah на example.com/location1
> 
> Нижеприведенная конфигурация не срабатывает нужным образом, то есть редирект
> всегда идет на первое имя в списке server_name, то есть, в данном случае, на
> example.com/location1
> 
> location / {
>                 if ($http_host ~ ^www\.example\.com$) {
>                         rewrite ^/$ /location1 permanent;
>                         break;
>                 }
>                 if ($http_host !~ ^www\.example\.com$) {
>                         rewrite ^/$ /location1 permanent;
>                         break;
>                 }
> }
> 
> Подскажите, какую переменную нужно использовать вместо http_host, чтобы
> получить желаемый результат, если это вообще возможно. Решение, которое
> имеется, меня не устраивает - продублировать полностью часть конфига,
> относящуюся к example.com для www.example.com и написать и там, и там
> редиректы на соответствующие домены.

http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#server_name_in_redirect


-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.