BugReport: ./configure --add-module неправильно подключает filter модуль

Igor Sysoev is at rambler-co.ru
Fri Jun 8 23:55:59 MSD 2007


On Fri, Jun 08, 2007 at 11:40:21PM +0400, Denis Erygin wrote:

> >Что значит - перехватить?
> 
> Перехватить, значит прочитать ответ и исключить его из вывода браузеру.
> В каком месте он добавляется к результирующему ответу браузеру?

В postpone фильтре. На самом деле, SSI + вся инфраструктура subrequest по 
сложности сравнима со всем nginx'ом. Это не самая удачная часть,
с которой можно начинатиь писать под nginx.

Прочитать и исключить ответ можно так, как сделано в

<!--# include virtual="/remote/body.php?argument=value" set="one" -->

> Например, если смотреть ngx_http_addition_filter_module.c , то там просто
> вызываются ngx_http_subrequest, а затем в браузере появляется их вывод,
> хотя явных манипуляций с цепочками буферов (ngx_chain_t) там нет...
> 
> >Этот handler вызывается по окончании подзапроса.
> Можно его использовать для чтения ответа?

Да.

> Насчет логики цепочек (ngx_chain_t):
> Если нужно заменить один из буферов на другой меньшего/большего размера,
> то как это правильно сделать в стиле nginx? Простая замена указателя на 
> chain->buf->pos
> может привести к утечке памяти.

Если буфер указывает на другую память, то лучше его создать и поставить
укзатели.

Замена указателей к утечке не приводит.


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list