Reading body during the REWRITE phase ?

Thibault Koechlin thibault.koechlin at
Fri Jan 15 14:01:06 UTC 2016


I have a module (naxsi) that reads the body during the REWRITE phase, in
the exact same way that ngx_form_input does :

When used with auth_request (or maybe other modules, but that's the
first time I encounter this issue within a few years of usage), there is
no request made to the upstream if the request is made using POST/PUT
and the body is bigger than client_body_buffer_size.

For the simplicity of the example, we'll assume I'm talking about
ngx_form_input (behaviour is the same, except code is way shorter).

The user reporting me the bug opened a ticket : It is possible to replace naxsi
with ngx_for_input and obtain the same results.

From Maxim's reply, it seems I failed to properly restore request
handlers after reading body.

What would be (if there is any) the proper way to read body within
REWRITE phase ? Is there any example/existing module that does such so I
can understand what am I doing wrong ? (In the past, I always thought
ngx_form_input was the reference one).

PS: You can find a bit more details here : (including sample config
& commands to reproduce bug)


Thibault Koechlin

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the nginx-devel mailing list