location /
Gena Makhomed
gmm на csdoc.com
Вт Окт 11 11:46:58 UTC 2011
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