В хендлере модуля используется location-конфигурация уровня сервера

Igor Sysoev is at rambler-co.ru
Wed Oct 28 11:37:17 MSK 2009


On Wed, Oct 28, 2009 at 11:22:39AM +0300, Igor Sysoev wrote:

> On Wed, Oct 28, 2009 at 08:46:12AM +0100, Valery Kholodkov wrote:
> 
> > Alrond wrote:
> > > Немного замысловато звучит :) Какое-то странное поведение хендлера 
> > > обнаружил.
> > 
> > [...skipped a lot of stuff...]
> > 
> > > Почему "ngx_http_get_module_loc_conf" берет данные не для запрашиваемого 
> > > локейшена, а от того места, где идет инициализация хендлера и переменной 
> > > "blabla"?
> > 
> > Потому что в фазе NGX_HTTP_POST_READ_PHASE локейшен ещё не определен, 
> > соответственно, ngx_http_conf_get_module_loc_conf возвращает 
> > конфигурацию локейшена по-умолчанию для этого сервера.
> 
> Я для себя называю этот location не "по умолчанию", а нулевой location.

Нулевой - потому что у него нет имени: отладочном логе он выглядит как
      using location ""

> Он, в частности, используется в случае, если в сервере нет location "/":
> 
>    server {
>        root  /path/to/files;
> 
>        location ~ \.php$ {
>            fastcgi_pass  ...
>        }
>    }
> 
> или location'ов нет вообще:
> 
>    server {
>        root  /path/to/files;
>    }
> 
> 
> -- 
> Игорь Сысоев
> http://sysoev.ru

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





More information about the nginx-ru mailing list