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

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


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.
Он, в частности, используется в случае, если в сервере нет location "/":

   server {
       root  /path/to/files;

       location ~ \.php$ {
           fastcgi_pass  ...
       }
   }

или location'ов нет вообще:

   server {
       root  /path/to/files;
   }


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





More information about the nginx-ru mailing list