HTTP Range Request Tester

Test whether a remote file host supports RFC 7233 byte-range requests. Range support enables resuming interrupted transfers, seeking video streams, and accelerated segmented downloads.

Test a sample:
Range Requests Supported

Resumable Downloads
—
Parallel Chunking
—
Video Scrub / Seek
—
Server Software
—

Diagnostic Response Details

Header / Property Observed Value Standard Expectation
HTTP Status Code — 206 Partial Content (or 200 OK)
Accept-Ranges — bytes
Content-Length — File byte length
ETag / Validator — Cache validator string

What Are HTTP Range Requests?

Standardized in RFC 7233, HTTP Range requests allow a client to request only a specific portion of an HTTP resource rather than the entire payload. For example, a client can ask a web server for bytes 0-1048575 (the first 1 MB) of a 10 GB file:

GET /large-file.zip HTTP/1.1
Host: example.com
Range: bytes=0-1048575

If the server supports Range requests, it responds with an HTTP 206 Partial Content status code along with a Content-Range header indicating which bytes were returned:

HTTP/1.1 206 Partial Content
Content-Range: bytes 0-1048575/10737418240
Content-Length: 1048576

Why Range Support Matters for Cloud Transfers

  • Fault Tolerance & Resumability: Network glitches happen. When transferring a 50 GB file, a temporary connection blip at 48 GB without Range support forces the entire transfer to restart from zero. With Range support, SaveInDrive issues a request for bytes=48318382080- and resumes seamlessly.
  • Seeking in Media Files: Video players (like HTML5 <video> or Google Drive's built-in preview) rely on Range requests to seek to arbitrary timestamps without buffering the entire film upfront.
  • Backpressure & Adaptive Streaming: SaveInDrive reads source bytes in controlled buffer chunks matching Google Drive's upload write rate, avoiding out-of-memory errors on server instances.

How to Enable HTTP Range in Nginx and Apache

If you run your own file server and want to ensure Range requests work for your visitors:

  • Nginx: Static file serving in Nginx enables max_ranges and byte ranges by default. If your files are served through a reverse proxy, ensure proxy_set_header Range $http_range; is passed upstream, or configure proxy_force_ranges on;.
  • Apache: Ensure mod_headers is active. By default, Apache sends Accept-Ranges: bytes for all static file handlers.