On Thu, Apr 04, 2013 at 01:31:38AM +0400, Валентин Бартенев wrote: > On Thursday 04 April 2013 01:04:24 Oleg wrote: > > On Wed, Apr 03, 2013 at 11:24:18PM +0400, Валентин Бартенев wrote: > > > On Wednesday 03 April 2013 23:06:28 Oleg wrote: > > > > Всем привет. > > > > > > > > Хочется добавлять переменные не перед конфигурацией процесса, а > > > > > > > > в процессе обработки запроса. Такое возможно? Везде, где нашёл описание > > > > создания переменных, написано, что только в preconfiguration можно. > > > > > > > > Я так понимаю, что $cookie_* и $http_* динамически создаются? > > > > > > Советую использовать grep src/. > > > > А разве есть какой-то другой способ :-)? > > > > > У этих переменных отдельные хуки в ngx_http_get_variable(): > > > http://trac.nginx.org/nginx/browser/nginx/trunk/src/http/ngx_http_variabl > > > es.c#L569 > > > > Это я видел. > > Т.е. цивильного способа, не выходя за пределы модуля, такую переменную > > использовать нет? Надо ngx_http_get_variable править? > > > > А для чего вам ещё одна magic-переменная, если не секрет?
У меня есть модуль аутентификации, который после своей работы должен создавать некоторые переменные, в случае удачной аутентификации. Например, $my_user, $my_http_addr, $my_http_port, где последнии два используются для обратного прокси. Т.к. возможны конфигурации, где некоторых переменных нет, а при старте nginx не известно, какой набор данных есть для каждого пользователя, то не хотелось бы заранее забивать жёстко в исходник все возможные переменные. Можно, конечно, формировать такой список переменных через конфиг, вроде: my_module_need_var "var1"; my_module_need_var "var2"; И уже при старте nginx создавать обычным образом только то, что указано в конфиге явно. Но мне это кажется не красивым. _______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
