Does Nginx supports If-Range ?

Zhang Chao zchao1995 at gmail.com
Tue Jul 4 01:25:34 UTC 2017


Hi!

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 theentire file(200). Why not
serve the partial content if its cached version matches the If-Range header?

Make sure that the ETag value in the header If-Range is same as the entity
ETag, don’t forget the double quotation marks. Maybe you need to support
the simple demo.




On 4 July 2017 at 04:10:01, Nelson Marcos (nelsonmarcos at gmail.com) wrote:

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
header?

In both scenarios the file is already cached.

Here is my conf: https://pastebin.com/gQQ0GSg6

Here are my requests and my files: https://pastebin.com/rxLwYaSK


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 :)

Kinds,
NM

_______________________________________________
nginx mailing list
nginx at nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20170703/5b7af5b6/attachment-0001.html>


More information about the nginx mailing list