ПРОЕКТЫ 


  АРХИВ 


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: Several requests in one connection



Hello!

On Wed, Nov 02, 2011 at 09:06:07AM -0400, amikish wrote:

> Код взят отсюда практически без
> изменений 
> http://nutrun.com/weblog/2009/08/15/hello-world-nginx-module.html
> 
> static void
> body_handler(ngx_http_request_t *r)
> {
> }
> 
> static ngx_int_t
> ngx_handler(ngx_http_request_t *r)
> {
>     ngx_int_t    rc;
>     ngx_buf_t   *b;
>     ngx_chain_t  out;
> 
>     if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD|NGX_HTTP_POST))) {
>         return NGX_HTTP_NOT_ALLOWED;
>     }
> 
> //    rc = ngx_http_discard_request_body(r);
>     rc = ngx_http_read_client_request_body(r, body_handler);
> 
>     if (rc != NGX_OK) {
>         return rc;
>     }

Это неправильный код.  После ngx_http_read_client_request_body() 
нужно выходить с NGX_DONE, и всю остальную работу делать в 
body_handler().

Пример можно посмотреть в src/http/modules/ngx_http_dav_module.c.

Maxim Dounin

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.