206 Partial Content risponde a una richiesta che contiene un’intestazione Range, per esempio Range: bytes=0-1048575, inviando solo la parte richiesta della risorsa. Un singolo intervallo è descritto da un’intestazione Content-Range come bytes 0-1048575/52428800; più intervalli vengono inviati insieme in un corpo multipart/byteranges.
Le richieste di intervalli permettono ai lettori audio e video di spostarsi in un punto qualsiasi senza scaricare l’intero file, ai download manager di riprendere i download interrotti e ai visualizzatori PDF di caricare singole pagine. I server ne annunciano il supporto con Accept-Ranges: bytes. I client usano If-Range per assicurarsi che le parti che combinano provengano dalla stessa versione del file.
Un 206 è memorizzabile in cache in modo euristico, e le cache possono combinare gli intervalli memorizzati.
Esempio di risposta
HTTP/1.1 206 Partial Content
Date: Fri, 06 Nov 2026 10:15:32 GMT
Content-Type: video/mp4
Content-Range: bytes 0-1048575/52428800
Content-Length: 1048576
Accept-Ranges: bytes
ETag: "a3f1-3200000"
[first 1,048,576 bytes of the video] SEO e verifica dei redirect
Normalmente i crawler richiedono documenti completi, e le pagine dovrebbero restituire loro 200. Un 206 compare in una verifica dei redirect solo se alla richiesta è stata aggiunta un’intestazione Range, per esempio come intestazione di richiesta personalizzata. Un server che invia 206 a richieste prive dell’intestazione Range è configurato male.
Cause comuni e casi d’uso
- Un lettore multimediale richiede il blocco successivo di un video o salta a un altro punto.
- Un download manager o
curl -C -riprende un download interrotto. - Un visualizzatore PDF o un’app scarica solo le parti di un file di grandi dimensioni che le servono.