ПРОЕКТЫ 


  АРХИВ 


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: accessing variables from a module



Скорее всего вы наступаете на стандартные грабли.

Ваш модуль регистрирует обработчик до того как NGINX ушел в rewrite фазу, поэтому рерайт переменных просто еще не существует на момент работы вашего обработчика.

И поидее ваш конфиг должен выглядить как:

location ~* "whatastring" {
    my_module off;
}

On 09/08/2011 10:53 AM, Alexander Zheglov wrote:
Добрый день!

Я использую собственный модуль для nginx и столкнулся со следующей проблемой.

Предполагалась следующая конфигурационная структура для иллюстрации идеи:

location / {
        my_module_command param;

        if ( $request_uri ~* "whatastring" ) {
                set $my_module_ignore 1;
        }

        root /;
}

Переменная my_module_ignore по задумке должна была поддерживаться модулем 
rewrite. Я не могу найти механизма, который бы мне позволил обратиться к 
переменным не моего модуля на чтение из handlera моего модуля. Обычный способ - 
посмотреть как уже сделано - не сработал. Я плохо искал, такого механизма нет 
или такой механизм вреден?

Похожая идея есть у proxy_module в команде cache_proxy_bypass, но, насколько я 
вижу значение заносится в дальнейшем в структуру upstream (хотя я не разобрался 
даже как оно вычисляется), а мне хотелось бы получить просто доступ на чтение к 
переменной модуля rewrite.

--
С уважением,
Александр Жеглов



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

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


 




Copyright © Lexa Software, 1996-2009.