Accept-Ranges

The Accept-Ranges response header advertises which Range units a resource supports.

Standard response

Accept-Ranges: selector, bytes

Present on every response for an HTML resource, whether or not the request itself used a Range header. OPTIONS responses advertise just Accept-Ranges: selector (see OPTIONS method).

entries and sessel ranging both work on Range requests — the platform accepts and answers them correctly — but neither is advertised in Accept-Ranges. If your client hard-codes Range: selector=..., Range: entries=..., or Range: sessel=... rather than deriving support from Accept-Ranges, this doesn't affect you. See Reading and writing for what each unit does.

Known issue: some CDNs narrow this header further

Known issue: Pagelove is currently served through Microsoft Azure Front Door, which rewrites Accept-Ranges on the way through — replacing selector, bytes with just bytes, the only unit AFD itself understands. Range: selector=... requests still work end-to-end and the response you get back is correct; only header-based discovery is affected, in the same way and for the same reason as the entries/sessel gap above. There is currently no workaround at the CDN layer.

See also