Issue with If-Range header and X-Accel-Redirect requests with upstream Last-Modified header

Leigh Dyer lsd at wootangent.net
Tue Sep 6 06:52:41 UTC 2011


On 6/09/11 12:45 PM, Leigh Dyer wrote:
> Hi,
>
> I have nginx 1.0.5 set up as a proxy in front of a Ruby/Ramaze
> application, using X-Accel-Redirect to efficiently handle sending large
> binary files by handing those transfers over to nginx. Range requests
> against this setup work just fine, but "If-Range" headers from the
> client are ignored -- the server always returns the requested range,
> even when the If-Range date doesn't match the file's Last-Modified date.

Hi again,

I spent some time looking in to this and created a patch that seems to 
fix the problem for me. The issue was in "ngx_http_set_last_modified" in 
http/modules/ngx_http_headers_filter_module.c -- last_modified_time gets 
set to -1 and is then never updated with the new value.

I have no idea how correct this patch is, so I'd greatly appreciate it 
if someone could review this for me.

Thanks
Leigh

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: nginx-1.0.5-ifrange-add_header-lastmodified-fix.patch
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20110906/42885a33/attachment.ksh>


More information about the nginx mailing list