Welcome! Log In Create A New Profile

Advanced

Re: Handling a subrequest response - determining upstream vs. static file and size

Maxim Dounin
March 20, 2012 04:22AM
Hello!

On Mon, Mar 19, 2012 at 09:34:56PM -0700, Brian Moran wrote:

> Sorry about that, inadvertently hit send...
>
> I am modifying an existing working filter module. I am issuing a
> subrequest, which is to a URI, or to a static local file (via a location in
> the config); I'd like to determine the size of the response that I'm
> getting back from the subrequest.
>
> In the subrequest's header filter, I'm doing this to find out the response
> size:
> if (r->upstream) {
> response_size = r->upstream->headers_in.content_length_n;
> ...
> }
>
> For the subrequests that result in the static file being streamed from
> disk, r->upstream is NULL.
> What's the right nginx way to determine in my filter what the size of the
> 'body' part of the subrequest response is going to be?

In both cases correct way to estimate response size (if known) is
to check r->headers_out->content_length_n. Note well: it may be
set to -1, which means response size isn't known.

Maxim Dounin

_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

Handling a subrequest response - determining upstream vs. static file and size

Brian Moran 1495 March 20, 2012 12:34AM

Re: Handling a subrequest response - determining upstream vs. static file and size

Brian Moran 524 March 20, 2012 12:36AM

Re: Handling a subrequest response - determining upstream vs. static file and size

zealot83 756 March 20, 2012 04:06AM

Re: Handling a subrequest response - determining upstream vs. static file and size

Maxim Dounin 747 March 20, 2012 04:22AM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 165
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready