Skip to content

Codici di stato HTTP spiegati

Tutti i codici di stato delle risposte HTTP più comuni, raggruppati per classe: cosa significano e quando li vedi. Il compagno di consultazione rapida allo strumento Codici di stato HTTP.

I codici di stato HTTP condividono uno schema: la prima cifra indica la classe, il resto è dettaglio. 1xx significa informativo, 2xx successo, 3xx reindirizzamento, 4xx errore del client, 5xx errore del server. Leggi prima la prima cifra. Lo strumento compagno permette di approfondire un singolo codice.

Tabella di riferimento · 55 vociOpen the http-status-codes tool →
55 of 55 rows
1xx Informativi
ContinueIl server ha ricevuto le intestazioni della richiesta e il client può inviare il corpo.Dopo un controllo preliminare prima di caricare un corpo di grandi dimensioni.
Switching ProtocolsIl server accetta di passare al protocollo richiesto dal client.Aggiornare una connessione HTTP a WebSocket.
ProcessingIl server ha ricevuto la richiesta e sta ancora lavorandoci.Un server WebDAV riconosce una richiesta lunga così il client non va in timeout.
Early HintsIl server invia intestazioni preliminari prima che la risposta finale sia pronta.Permettere a un browser di precaricare risorse mentre la pagina viene ancora resa.
2xx Successo
OKLa richiesta è riuscita e il corpo della risposta contiene il risultato.Successo standard per una GET o una PUT.
CreatedLa richiesta è riuscita ed è stata creata una nuova risorsa.Da restituire dopo una POST che crea qualcosa.
AcceptedLa richiesta è stata accettata per l'elaborazione ma non è ancora terminata.Un lavoro lungo è iniziato e gira in modo asincrono.
Non-Authoritative InformationLa richiesta è riuscita ma i dati restituiti sono stati trasformati lungo la strada.Un proxy o una cache che serve metadati modificati invece di quelli dell'origine.
No ContentLa richiesta è riuscita e non c'è nessun corpo da restituire.Una DELETE riuscita, o una PUT senza nulla da dire.
Reset ContentLa richiesta è riuscita e il client dovrebbe reimpostare la vista che l'ha inviata.Dopo l'invio di un modulo, per dire alla pagina di svuotare i campi.
Partial ContentIl server restituisce solo la parte richiesta della risorsa.Servire un intervallo di byte da una richiesta Range.
3xx Reindirizzamento
Moved PermanentlyLa risorsa ha un nuovo URL permanente e le richieste future dovrebbero usarlo.Una pagina si è spostata e i motori di ricerca devono aggiornare l'indice.
FoundLa risorsa è temporaneamente a un URL diverso, ma continua a usare quello originale.Reindirizzare per un momento a una pagina di accesso.
See OtherLa risposta si trova a un URL diverso e va recuperata con una GET.Il pattern PRG: reindirizzare una POST a una pagina risultato così un refresh non la reinvia.
Not ModifiedLa copia in cache è ancora valida, quindi il server non invia corpo.GET condizionale quando la cache del client è aggiornata.
Use ProxyLa richiesta deve essere inviata attraverso il proxy indicato nella risposta.Reti proxy legacy; deprecato dal 2011.
Temporary RedirectLa risorsa è temporaneamente altrove e il metodo della richiesta originale va conservato.Come 302, ma una POST resta una POST nel reindirizzamento.
Permanent RedirectLa risorsa ha un nuovo URL permanente e il metodo della richiesta originale va conservato.Come 301, ma una POST resta una POST nel reindirizzamento.
4xx Errore client
Bad RequestIl server non ha capito la richiesta per via di una sintassi malformata.JSON malformato, o un campo obbligatorio mancante.
UnauthorizedL'autenticazione è richiesta ed era assente oppure è fallita.Nessun token, oppure un token non valido o scaduto.
Payment RequiredLa richiesta richiede pagamento, anche se la specifica non ha mai definito come.Alcune API lo usano come marcatore di paywall; la maggior parte non lo usa mai.
ForbiddenIl client è autenticato ma non può accedere a questa risorsa.Accesso valido, ma senza permesso per questa risorsa.
Not FoundIl server non ha nessuna risorsa a questo URL.URL sconosciuto o un ID che non esiste.
Method Not AllowedL'URL esiste ma non consente il metodo di richiesta usato.Una POST contro un endpoint che accetta solo GET.
Not AcceptableIl server non può restituire contenuto che corrisponda alle intestazioni Accept del client.Il client chiedeva solo XML, ma l'API restituisce solo JSON.
Proxy Authentication RequiredIl client deve autenticarsi presso il proxy prima che la richiesta proceda.Un proxy aziendale che rifiuta una richiesta non autenticata.
Request TimeoutIl client ha impiegato troppo a inviare la richiesta e il server ha rinunciato.Un caricamento bloccatosi prima che il corpo finisse di arrivare.
ConflictLa richiesta è in conflitto con lo stato attuale della risorsa.Una email duplicata o una corsa di modifiche sullo stesso record.
GoneLa risorsa esisteva ma è stata rimossa in modo permanente.Un endpoint ritirato apposta, più forte del 404.
Length RequiredLa richiesta necessita di un'intestazione Content-Length e non ce l'ha.Un server che deve conoscere la dimensione in anticipo rifiuta un corpo in streaming.
Precondition FailedUna precondizione di intestazione come If-Match è risultata falsa.Una modifica ottimistica in cui il record è cambiato da quando il client l'ha letto.
Content Too LargeIl corpo della richiesta supera il limite accettato dal server.Un caricamento più grande della dimensione massima del corpo del server.
URI Too LongL'URL della richiesta è più lungo di quanto il server sia disposto a interpretare.Un modulo serializzato per sbaglio in una query string GET cresciuta senza limite.
Unsupported Media TypeIl formato del corpo della richiesta non è tra quelli accettati dall'endpoint.Una POST con Content-Type text/plain contro un endpoint solo JSON.
Range Not SatisfiableL'intervallo di byte nell'intestazione Range non rientra nella risorsa.Chiedere byte oltre la fine di un file riprendendo uno scaricamento.
Expectation FailedIl server non può soddisfare l'aspettativa dichiarata nell'intestazione Expect.Un'aspettativa 100-continue che il server si rifiuta di onorare.
I'm a teapotIl server è una teiera e rifiuta di preparare il caffè.Uno scherzo del primo aprile del 1998 che non muore; le API lo restituiscono per gioco.
Misdirected RequestLa richiesta è stata inviata a un server che non può produrre una risposta per essa.Una connessione riutilizzata inviata a un host che questo server non serve.
Unprocessable EntityLa richiesta è ben formata ma i suoi valori non superano la validazione semantica.JSON valido i cui campi violano le regole di business.
Too EarlyIl server rifiuta una richiesta che rischia di essere un replay.Rifiutare una richiesta non idempotente riprovata prima che le chiavi vengano ruotate.
Upgrade RequiredIl client deve passare a un protocollo diverso per usare questa risorsa.Un endpoint che esige TLS o WebSocket.
Precondition RequiredIl server richiede intestazioni condizionali che la richiesta non ha inviato.Un'API che esige If-Match per prevenire aggiornamenti persi.
Too Many RequestsIl client ha inviato troppe richieste in una certa finestra di tempo.Un limite di frequenza è stato raggiunto; fai backoff e riprova.
Request Header Fields Too LargeUno o più campi di intestazione sono troppo grandi perché il server li elabori.Un cookie o un token cresciuto fino a bloccare ogni richiesta al sito.
Unavailable For Legal ReasonsLa risorsa è bloccata per motivi legali, come una rimozione o una restrizione geografica.Una rimozione disposta da un governo o una pagina bloccata in un paese.
5xx Errore server
Internal Server ErrorIl server ha incontrato una condizione imprevista ed è fallito.Un'eccezione non gestita o un bug sul server.
Not ImplementedIl server non supporta il metodo o la funzionalità richiesta.Un endpoint è dichiarato ma non ancora costruito.
Bad GatewayUn gateway o proxy ha ricevuto una risposta non valida da un server upstream.Un proxy inverso non ha raggiunto il backend.
Service UnavailableIl server è temporaneamente incapace di gestire la richiesta.Manutenzione, sovraccarico o un servizio dipendente fuori uso.
Gateway TimeoutUn gateway o proxy non ha ricevuto in tempo una risposta da un server upstream.Il backend ha impiegato troppo e il proxy ha rinunciato.
HTTP Version Not SupportedIl server non supporta la versione HTTP presente nella richiesta.Un client che parla una versione di protocollo che il server non ha mai imparato.
Variant Also NegotiatesLa negoziazione trasparente del contenuto è finita in un riferimento circolare.Un server mal configurato che fa negoziazione sperimentale del contenuto.
Insufficient StorageIl server non può memorizzare la rappresentazione necessaria a completare la richiesta.Un server WebDAV con lo spazio allocato esaurito.
Loop DetectedIl server è finito in un ciclo infinito mentre elaborava la richiesta.Un binding WebDAV che si riferisce a se stesso.
Network Authentication RequiredIl client deve autenticarsi presso la rete per ottenere l'accesso.Un captive portal in un hotel o in aeroporto che intercetta la richiesta.