ПРОЕКТЫ 


  АРХИВ 


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: Работа с headers



On Wed, Jul 18, 2007 at 04:04:43PM +0400, Denis Erygin wrote:

> Как редактировать заголовки в handler-модулях?
> 
> Например, заменить "Сonnection: keep-alive" на "Connection: close".
> 
> Если пролистать r->headers_out.headers, то там нет ни одного заголовка,
> хотя они есть в выводе браузеру, например если от браузера пришел
> "Connection: keep-alive", то он отдается без изменений обратно, хотя
> в r->headers_out.headers не присутствует.
> 
> h = ngx_list_push(&r->headers_out.headers);
> if (h) {
>       h->hash       = 1;
>       h->key.len    = sizeof("Connection") - 1;
>       h->key.data   = (u_char*)"Connection";
>       h->value.len  = sizeof("close") - 1;
>       h->value.data = (u_char*)"close";
> }
> 
> Код выше просто добавляет заголовок в конец,
> так как же перехватывать/редактировать все, отдаваемые браузеру,
> заголовки?

Некоторые заголовки не выставляются явно. В частности,
"Connection: close" выдаётся в ngx_http_header_filter_module,
если не установлен r->keepalive.


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



 




Copyright © Lexa Software, 1996-2009.