id summary reporter owner description type status priority milestone component version resolution keywords cc uname nginx_version 1357 slice+if_range problem cjhust@… "{{{ server { listen 8888; location / { root html; } } server { listen 8000; location / { slice 128K; proxy_set_header range $slice_range; proxy_pass http://127.0.0.1:8888/; } } server { listen 8001; location / { proxy_pass http://127.0.0.1:8888/; } } }}} {{{ #curl http://127.0.0.1:8001/4K.mp4 -o /dev/null -v -H 'range: bytes=1-2' -H 'if-range: Wed, 09 Aug 2017 08:29:34 GMT' * About to connect() to 127.0.0.1 port 8001 (#0) * Trying 127.0.0.1... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Connected to 127.0.0.1 (127.0.0.1) port 8001 (#0) > GET /4K.mp4 HTTP/1.1 > User-Agent: curl/7.29.0 > Host: 127.0.0.1:8001 > Accept: */* > range: bytes=1-2 > if-range: Wed, 09 Aug 2017 08:29:34 GMT > < HTTP/1.1 206 Partial Content < Server: nginx/1.11.2 < Date: Tue, 15 Aug 2017 03:54:28 GMT < Content-Type: video/mp4 < Content-Length: 2 < Connection: keep-alive < Last-Modified: Wed, 09 Aug 2017 08:29:34 GMT < ETag: ""598ac7ee-1000"" < Content-Range: bytes 1-2/4096 < { [data not shown] 100 2 100 2 0 0 1010 0 --:--:-- --:--:-- --:--:-- 2000 * Connection #0 to host 127.0.0.1 left intact }}} return 206, meet expectation [[BR]] [[BR]] [[BR]] {{{ #curl http://127.0.0.1:8000/4K.mp4 -o /dev/null -v -H 'range: bytes=1-2' -H 'if-range: Wed, 09 Aug 2017 08:29:34 GMT' * About to connect() to 127.0.0.1 port 8000 (#0) * Trying 127.0.0.1... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Connected to 127.0.0.1 (127.0.0.1) port 8000 (#0) > GET /4K.mp4 HTTP/1.1 > User-Agent: curl/7.29.0 > Host: 127.0.0.1:8000 > Accept: */* > range: bytes=1-2 > if-range: Wed, 09 Aug 2017 08:29:34 GMT > < HTTP/1.1 200 OK < Server: nginx/1.11.2 < Date: Tue, 15 Aug 2017 03:54:46 GMT < Content-Type: video/mp4 < Content-Length: 4096 < Connection: keep-alive < Last-Modified: Wed, 09 Aug 2017 08:29:34 GMT < ETag: ""598ac7ee-1000"" < Accept-Ranges: bytes < { [data not shown] 100 4096 100 4096 0 0 1036k 0 --:--:-- --:--:-- --:--:-- 1333k * Connection #0 to host 127.0.0.1 left intact }}} return 200, not meet expectation Is there some reason for slice module? for user viewport, slice and no slice method must not change the HTTP result. " defect closed minor other 1.12.x fixed " Linux localhost.localdomain 3.10.0-327.22.2.el7.x86_64 #1" nginx version: nginx/1.11.2