HTTP Range Requests — 206 Partial Content and 416 Range Not Satisfiable
Warning2xx success
Overview
Understand HTTP range requests including 206 Partial Content for resume downloads and 416 Range Not Satisfiable when the requested range is invalid.
Key Details
- Range requests allow clients to request a specific portion of a resource using the Range header
- 206 Partial Content confirms the server is sending only the requested byte range
- 416 Range Not Satisfiable means the requested range exceeds the resource size
- Essential for video streaming (seeking), download resumption, and large file transfers
- The Accept-Ranges: bytes header in server responses indicates range request support
Common Causes
- Download client requesting a range beyond the file size (causes 416)
- Corrupted partial download file causing mismatched byte offset on resume
- Server not supporting range requests — returns 200 with full content instead of 206
- CDN stripping Range headers or not forwarding them to origin server
Steps
- 1Check if the server supports ranges: look for Accept-Ranges: bytes in response headers
- 2For 416 errors: delete the partial download and start fresh
- 3Verify the Content-Length matches expected file size before resuming a download
- 4Use curl with --range 0-1023 to test range request support on a server
- 5For servers: enable Range request support in nginx (default) or Apache (mod_headers)
Tags
range-request206416partial-contentdownload-resume
Related Items
More in 2xx Success
http-200-okHTTP 200 OK — What It Means & How to Fix It
Informationalhttp-201-createdHTTP 201 Created — What It Means & How to Fix It
Informationalhttp-202-acceptedHTTP 202 Accepted — What It Means & How to Fix It
Informationalhttp-203-non-authoritative-informationHTTP 203 Non-Authoritative Information — What It Means & How to Fix It
Informationalhttp-204-no-contentHTTP 204 No Content — What It Means & How to Fix It
Informationalhttp-205-reset-contentHTTP 205 Reset Content — What It Means & How to Fix It
InformationalFrequently Asked Questions
When you seek to a position in a video, the player sends a Range header requesting bytes from that position. The server responds with 206 and the requested portion.