ПРОЕКТЫ 


  АРХИВ 


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: location /



On 10.10.2011 15:31, Gena Makhomed wrote:

server {
rewrite ^(.*) /prefix$1;
}

происходит зацикливание rewrite or internal redirection
cycle while processing "/prefix/prefix/prefix/prefix/prefix/prefix/..."

И причина, в общем-то, очевидна - если знать нюансы. В первом
конфиге на самом деле написано нечто вроде:

server {
    rewrite ^(.*) /prefix$1;

    location / {
        rewrite ^(.*) /prefix$1;
    }
}

И по понятным причинам будет цикл.

это даже не "нюансы", это больше похоже на слово "bug",
потому что обычно директивы rewrite внутрь вложенных
location`ов не наследуются. а тут - такое происходит.

почему нельзя сделать по аналогии с server_name -
если server_name не указано внутри server { ... }
то считается, что в этом случае будет server_name "";

аналогично и если в конфиге явно отсутствует location / { ... }
- можно ведь неявно сделать полностью пустой location / { }
в который только будут наследоваться директивы из вышестоящего
уровня, например, директива root и т.п. тогда "нюансов" не будет.

--
Best regards,
 Gena

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.