Does Nginx supports If-Range ?

Nelson Marcos nelsonmarcos at
Mon Jul 3 20:09:28 UTC 2017

Hello everyone!

I don't know if it is an expected behaviour or a bug:

Scenario 1(OK): If I perform a request *with the header Range*,  Nginx
serves the *partial content(HTTP 206)*.

Scenario 2 (NOT OK): If I perform a request *with the header Range AND the
header "If-Range" *with the Etag, Nginx serves the *entire file*(200). Why
not serve the partial content if its cached version matches the If-Range

In both scenarios the file is already cached.

Here is my conf:

Here are my requests and my files:

The error happened on my server(Nginx 1.10.2) but I was also able to
reproduce it on my Macbook (nginx 1.12.0).

Thanks for any help :)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the nginx mailing list