Several requests in one connection
Maxim Dounin
mdounin на mdounin.ru
Ср Ноя 2 13:15:43 UTC 2011
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