416
Range Not Satisfiable
Specifica del codice di stato HTTP 416
Il codice di stato 416 Range Not Satisfiable indica che nessuno degli intervalli nel campo di intestazione Range della richiesta (Sezione 3.1) si sovrappone all'estensione corrente della risorsa selezionata o che l'insieme degli intervalli richiesti è stato rifiutato a causa di intervalli non validi o di una richiesta eccessiva di intervalli piccoli o sovrapposti.
Per gli intervalli di byte, la mancata sovrapposizione all'estensione corrente significa che il primo-byte-pos di tutti i valori di byte-range-spec era maggiore della lunghezza corrente della rappresentazione selezionata. Quando questo codice di stato viene generato in risposta a una richiesta di intervallo di byte, il mittente DOVREBBE generare un campo di intestazione Content-Range che specifichi la lunghezza attuale della rappresentazione selezionata (Sezione 4.2).
Ad esempio:
HTTP/1.1 416 Range Not Satisfiable
Data: Fri, 20 Jan 2012 15:41:54 GMT
Content-Range: bytes */47022
Nota: Poiché i server sono liberi di ignorare Range, molte implementazioni risponderanno semplicemente con l'intera rappresentazione selezionata in una risposta 200 (OK). Questo in parte perché la maggior parte dei client è pronta a ricevere un 200 (OK) per completare l'operazione (anche se in modo meno efficiente) e in parte perché i client potrebbero non smettere di fare una richiesta parziale non valida finché non hanno ricevuto una rappresentazione completa. Pertanto, i client non possono dipendere dalla ricezione di una risposta 416 Range Not Satisfiable, anche quando questa è più appropriata.
Fonte / Citazione da: Il codice di stato HTTP 416 Range Not Satisfiable è specificato dalla sezione 4.4 di RFC7233.
Protocollo HTTP
Come lanciare un codice di stato 416 con PHP?
Per lanciare il codice di stato HTTP 416 su una pagina web, si può usare la funzione PHP http_response_code. La sintassi è la seguente: http_response_code(416) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Test del codice di stato HTTP 416
Per poter visualizzare il codice di stato HTTP (in questo caso 416 Range Not Satisfiable) e altre informazioni sul lato client, è necessario aprire la console di sviluppo con F12. Quindi navigare nella scheda "Rete". Ora la pagina può essere aperta, il sito web (ad esempio index.php) dovrebbe essere visibile nella scheda Rete. Questo deve essere selezionato e poi deve essere selezionata la sezione Herder. L'utente vedrà quindi il seguente risultato:
URL: https://http-statuscode.com/errorCodeExample.php?code=416
Stato: 416 Range Not Satisfiable
Quelle: Network
Indirizzo IP: XX.XX.XX.XX
Come creare la propria pagina di errore per il codice di stato 416
Apache Webserver
Il server web "Apache" è uno dei server web più comuni su Internet. Per creare la propria pagina di errore 416 Range Not Satisfiable in "Apache", è necessario apportare la seguente modifica al file seguente.
NGINX Webserver
Simile al server web "Apache", anche "NGINX" è ampiamente utilizzato su Internet. Per creare la propria pagina di errore 416 Range Not Satisfiable in "NGINX", è necessario apportare la seguente modifica al file seguente.
location = /416.html {
root /usr/share/nginx/html;
internal;
}
Compatibilità con i browser del codice di stato 416
Chrome | no data |
Edge | no data |
Firefox | no data |
Opera | no data |
Safari | no data |
Chrome Android | no data |
Firefox for Android | no data |
Opera Android | no data |
Safari on iOS | no data |
Internet | no data |
WebView Android | no data |
Costanti nei linguaggi di programmazione
HttpStatusCode.RequestedRangeNotSatisfiable
http.StatusRequestedRangeNotSatisfiable
Response::HTTP_REQUESTED_RANGE_NOT_SATISFIABLE
httplib.REQUESTED_RANGE_NOT_SATISFIABLE
http.client.REQUESTED_RANGE_NOT_SATISFIABLE
http.HTTPStatus.REQUESTED_RANGE_NOT_SATISFIABLE
:requested_range_not_satisfiable