[dev] some questions about subrequests
Manlio Perillo
manlio_perillo at libero.it
Fri Mar 28 15:21:31 MSK 2008
Sergey Bochenkov ha scritto:
> NGX_HTTP_ZERO_IN_URI:
>
> src/http/ngx_http_core_module.c:
> sr->zero_in_uri = (flags & NGX_HTTP_ZERO_IN_URI) != 0;
>
> src/http/ngx_http_request.h:
> /* URI with "\0" or "%00" */
> unsigned zero_in_uri:1;
>
> Obviously, IMHO.
>
Yes, this was easy!
>
> NGX_HTTP_SUBREQUEST_IN_MEMORY:
>
> src/http/ngx_http_core_module.c:
> sr->subrequest_in_memory = (flags & NGX_HTTP_SUBREQUEST_IN_MEMORY) != 0;
>
> src/http/ngx_http_upstream.c:
> if (!r->subrequest_in_memory) {
> ngx_http_upstream_send_response(r, u);
> return;
> }
>
> /* subrequest content in memory */
>
> ...
>
> So, as I can understand from using-of-subrequests point of view,
> r->subrequest_in_memory flag tells ngx_http_upstream_module to save a
> pointer to the full chain of response buffers in r->upstream->out_bufs
> chain-link. And *not-to-free* that buffers after subrequest was
> finished.
>
> Fix me, if I'm wrong.
>
I'm not sure, but it seems that I can safely set flags to 0.
I have one more, important, question.
When will be the post_subrequest->handler called?
Always after ngx_http_subrequest returns?
Thanks Manlio Perillo
More information about the nginx
mailing list