ПРОЕКТЫ 


  АРХИВ 


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[4]: ENV в nginx.conf



порты одни и те же tomcat - конечно может прописать заголовок, но ето только по 
proxy request,  а когда статика уже сгенина и отдается nginx'ом, так хедер 
только nginx посадить и может.



-----Original Message-----
From: "Alexey V. Karagodov" <kav@xxxxxxxxxxxxxx>
To: nginx-ru@xxxxxxxxx
Date: Wed, 15 Jul 2009 15:36:13 +0400
Subject: Re: Re[2]: ENV в nginx.conf

> 
> On 15.07.2009, at 14:16, xinu wrote:
> 
> > Алексей, Игорь,  Здравствуйте!
> >
> > как Вы полагаете, было ли бы возможно имплементировать не всех ENV  
> > из shell'а поголовно,
> > а лишь екстра задекларированных в конфиг файле? т.е. типа:
> >   read_env <имя_ENV>
> > или
> >   export_env <имя_ENV>
> > для ее дальнейшего использования.
> >
> > Объясню на примере:
> > у меня есть несколько серверов (под большой нагрузкой - поетому  
> > nginx :-). они отдают статику генерируемую tomcatом. чтоб узнать кто  
> > ее сгенерил - я сажу (пока в апаче) ENV в HTTP Header (в примере).
> жесть какая-то
> ну есть же у них какие-то отличия?
> адрес, порт, они могут сами что-то добавить в заголово, а нгинх может  
> его прочитать и тд и тп
> есть куча более "кошерных" способов узнать откуда что берётся
> 
> >
> > Преимущества такого решения:
> > ENV - я сажу в start-sripte - который очень редко изменяется. при  
> > изменении httpd.conf а копирую один файл на все сервера (без  
> > необходимости в обработке напильником на каждом сервере!!! что  
> > увеличивало бы не только неудобство но и вероятность ошибки)
> >
> > поетому был бы рад, если бы Вы имплементировали "частичное"  
> > использование заранее задекларированных переменный среды
> >
> > с ув. Сергей
> >
> >
> >
> >
> >
> > -----Original Message-----
> > From: Igor Sysoev <is@xxxxxxxxxxxxx>
> > To: nginx-ru@xxxxxxxxx
> > Date: Wed, 15 Jul 2009 12:32:09 +0400
> > Subject: Re: ENV в nginx.conf
> >
> >> On Wed, Jul 15, 2009 at 12:06:08PM +0400, Михаил Монашёв wrote:
> >>
> >>> Здравствуйте, Алексей.
> >>>
> >>> Мне кажется, что иметь конфиг, которые зависит от очень многих  
> >>> внешних
> >>> воздействий не совсем удобно. Например, работавший nginx вдруг при
> >>> рестарте сервера не поднимается. А потом оказывается, что кто-то
> >>> когда-то что поменял (не в конфиге) и забыл проверить после этого
> >>> работоспособность nginx-а. Т.е. конфигурить надо конфигом, а не  
> >>> как-то
> >>> или где-то ещё.
> >>
> >> Ну в общем, да. На мой взгляд, именно этим переменные среды неудобны.
> >> Наоборот, переменные можно задать в конфиге (с некоторыми  
> >> ограничениями):
> >> http://sysoev.ru/nginx/docs/ngx_core_module.html#env
> >>
> >>> AK> кстати смотрю и не понятно - а почему нету такого до сих пор,  
> >>> реально
> >>> AK> ведь там ваще не сложно реализовать вроде бы
> >>>
> >>>>> в моем частном случае, я думал вынести header в include, а вот
> >>>>> if() логику - таки похоже прийдется генерить скриптом - хотя это
> >>>>> на мой взгляд не самое лучшее решение.
> >>>>>
> >>>>> все таки очень не хватает ENV!!!
> >>>>> не уже ли это сложно имплементировать?
> >>>>>
> >>>>> еще раз спасибо
> >>>
> >>>>>> Генерите конфиг скриптом, который будет прописывать в конфиг  
> >>>>>> нужные
> >>>>>> значения.
> >>>>>>
> >>>>>> x> что то не могу найти возможности доступа в nginx.conf к
> >>>>>> x> переменным среды. т.е я не хочу передавать переменные  
> >>>>>> скриптам, а в
> >>>>>> x> использовать их в блоке if()-nginx.conf. (или как в етом  
> >>>>>> примере -
> >>>>>> x> садить header)
> >>>>>>
> >>>>>> x> пробую напр. так:
> >>>>>> x> $ HNAME=web1  ../nginx/sbin/nginx -t
> >>>>>> x> [emerg]: directive "add_header" is not terminated by ";" in  
> >>>>>> nginx.conf:21
> >>>>>> x> configuration file ../nginx/conf/nginx.conf test failed
> >>>>>>
> >>>>>> x> в конфиге:
> >>>>>> x>    21      add_header  X-Gererator   ${ENV:HNAME} ;
> >>>>>> x> пробовал и так:
> >>>>>> x>    21      add_header  X-Gererator   $ENV{HNAME} ;
> >>>>>>
> >>>>>> x> все это не катит.
> >>>>>> x> а как Правильно?
> >>>>>> x> спасибо.
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> --
> >>>
> >>> С уважением,
> >>> Михаил Монашёв, SoftSearch.ru
> >>> mailto:postmaster@xxxxxxxxxxxxx
> >>> ICQ# 166233339
> >>> http://michael.mindmix.ru/
> >>> Без бэкапа по жизни.
> >>>
> >>
> >> -- 
> >> Игорь Сысоев
> >> http://sysoev.ru
> >>
> >
> >
> 
> 




 




Copyright © Lexa Software, 1996-2009.