accessing variables from a module

Roman Vasilyev roman.vasilyev на yousendit.com
Чт Сен 8 18:01:45 UTC 2011


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

Ваш модуль регистрирует обработчик до того как 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 на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>    



Подробная информация о списке рассылки nginx-ru