игорь ! да, это работает пока location "простой" но если location где делается set var отдается по fcgi или proxy_pass то значения переменных в основном запросе оказываются неопределены :(
> On 4/4/06, Igor Sysoev <is@xxxxxxxxxxxxx> wrote: > > On Tue, 4 Apr 2006, proforg wrote: > > > Снова про наследование ssi переменных из подзапросов :)
> > Ты помнится говорил что это не очень сложно сделать, может быть > получится > > включить это в следующщую версию nginx ? > > Какое именно наследование имеется ввиду ? > Наследование в основной ssi из подзапроса ? Это должно работать.
> да, именно о нём. вот кусок из переписки где это обсуждалось (17 > февраля):
Видимо, мы тогда не поняли друг друга. Вот такие два файла:
<!--# include virtual="/ssi_inc2.html" -->value is <!--# echo var="NAME" -->
/ssi_inc2.html: <!--# set var="NAME" value="TEXT" -->
>> В SSI можно попробовать примерно так:
>> >> <!--# include virtual="/mmc_var" -->value is "<!--# echo var="NAME" -->" >> >> /mmc_var возвращает что-то вроде >> >> <!--# set var="NAME" value="TEXT" -->
>> >> Ответ в результате выглядит так: >> >> value is "TEXT" > > К сожалению, не получается. > Если на локейшн /mmc_var поставить ssi on - то тогда <!--# set
> var="NAME" value="TEXT" --> выполняется, но на уровень скрипта который > вызвал /mmc_var значение var не передается, т.к установлено внутри > подзапроса. > если же убрать ssi on, то <!--# set var="NAME" value="TEXT" --> просто
> выводится в основном скрипте - ssi фильтр делает один проход по тексту > и обработать это уже не может ... > > Игорь, а можно как нить простым способом заставить ssi применяться дважды ? > Для таких случаев. Это я думаю всё равно будет быстрее чем куча
подзапросов ...
Сейчас - нет. Переменные создаваемые внутри SSI дальше текущего подзапроса не хранятся. Надо будет исправить.