Hello,
I am making a byte range request to NGINX using wget. NGINX responds with status code 206 (partial content), but instead of downloading the content, wget retries.
Request:
wget -S 'http://cache.example.com/video5.ts' --header="Range: bytes=0-1023"
Output from wget:
--2019-08-02 15:36:44-- http://cache.example.com/video5.ts
Resolving cache.example.com (cache.example.com)... 172.16.200.5
Connecting to cache.example.com (cache.example.com)|172.16.200.5|:80... connected.
HTTP request sent, awaiting response...
HTTP/1.1 206 Partial Content
Server: nginx/1.17.0a
Date: Fri, 02 Aug 2019 22:36:45 GMT
Content-Type: video/MP2T
Content-Length: 1024
Connection: keep-alive
X-Server-IP: 172.16.200.5
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Range
Access-Control-Allow-Methods: GET
Timing-Allow-Origin: *
Access-Control-Max-Age: 86400
Access-Control-Expose-Headers: X-Server-IP,Location
Age: 86555
Content-Range: bytes 0-1023/135090032
Retrying.
Then wget sends the request again, with the same result.
The same wget request to the origin succeeds. The data is cached properly (wget without the range header succeeds).
Adding —debug to the wget provides not much more.
Registered socket 3 for persistent reuse.
Disabling further reuse of socket 3.
Closed fd 3
Retrying.
There is nothing in the NGINX error log.
I am speculating that NGINX closes the connection before the data is delivered. But why?
Thanks…
Roger
_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx