Riferimento tecnico

Codici di Stato della Risposta HTTP

I codici di stato HTTP sono segnali a tre cifre in una risposta del server. La prima cifra identifica l'esito generale; le cifre rimanenti identificano una condizione specifica. Questa guida spiega i codici standard registrati con un contesto pratico, oltre a importanti valori specifici del provider che possono comparire nei log.

How to read this catalogue: A status is not a complete diagnosis by itself. Check the request method, response headers, body, redirect target, and the server or proxy that generated it. Unrecognized values generally retain the meaning of their first-digit class, but their exact behavior may be implementation-specific.

Compatibilità con i browser e gestione delle risposte

I codici di stato HTTP fanno parte del protocollo HTTP, non sono una funzionalità del browser che ciascun vendor implementa come API web separata. I browser attuali sono in grado di gestire le classi di risposta standard; le pagine di errore visibili e il comportamento in caso di nuovo tentativo (retry) dipendono dal browser. Il supporto per risposte provvisorie più recenti ed estensioni specializzate può differire a seconda della versione e del percorso di rete.

Famiglia di rispostaChrome / EdgeFirefoxSafariOperaWebView Android / iOSNota di compatibilità
1xx informativoSupportato come risposte provvisorie del protocolloSupportato come risposte provvisorie del protocolloSupportato come risposte provvisorie del protocolloSupportato come risposte provvisorie del protocolloSupportato dallo stack di rete sottostante100/101 sono consolidati; 102 è di nicchia/deprecato. L'adozione di 103 Early Hints e il comportamento osservabile di pre-caricamento variano in base alla versione del browser, al server e agli intermediari.
2xx successoSupportatoSupportatoSupportatoSupportatoSupportatoLa semantica standard di successo è condivisa. Le regole per il corpo (body) sono comunque importanti: ad esempio, 204 e 205 non hanno un corpo di risposta.
3xx reindirizzamentoSupportatoSupportatoSupportatoSupportatoSupportatoPosizione, metodo, cache e criteri di sicurezza influiscono sulla navigazione. 301/302 possono convertire POST in GET; 307/308 preservano il metodo.
4xx errore del client/richiestaSupportatoSupportatoSupportatoSupportatoSupportatoIl browser riceve la risposta; la visualizzazione del corpo del server o di una vista di errore generata dal browser varia a seconda dello stato e del prodotto.
5xx errore del serverSupportatoSupportatoSupportatoSupportatoSupportatoI client possono elaborare la classe di risposta, ma le pagine generate dai proxy, il comportamento di nuovo tentativo e l'interfaccia diagnostica non sono identici su tutti i browser.
Codice sconosciuto in una classe notaGestione a livello di classeGestione a livello di classeGestione a livello di classeGestione a livello di classeGestione a livello di classeI client HTTP possono dedurre la classe generale dalla prima cifra; non fare affidamento sul fatto che un codice personalizzato abbia una semantica standard o un'interfaccia identica.

La compatibilità qui descritta si riferisce alla gestione a livello di protocollo e non garantisce che ogni browser mostri la stessa pagina di errore. Client più datati, WebView incorporate, proxy e captive portal potrebbero imporre comportamenti aggiuntivi.

1xx — Risposte informative

100

Continue

Il server ha accettato gli header della richiesta e sta attendendo il corpo della richiesta rimanente. Viene comunemente usato con Expect: 100-continue in modo che un client possa evitare di caricare un corpo di grandi dimensioni quando la richiesta verrà respinta.

Guida operativa: Interim response; continue sending the body only when one is expected.

101

Switching Protocols

Il server accetta di cambiare il protocollo per questa connessione dopo che il client ha richiesto un aggiornamento. Gli handshake WebSocket sono un utilizzo comune.

Guida operativa: Connection-level transition; verify the Upgrade and Connection headers.

102

Processing

Un server WebDAV segnala che è stata avviata un'operazione prolungata ma non è ancora completata. È una risposta legacy/deprecata e non deve essere scambiata per il risultato finale.

Guida operativa: Interim WebDAV status; wait for the final response.

103

Early Hints

Il server invia header preliminari, spesso suggerimenti Link, mentre prepara la risposta finale. Un client può iniziare a recuperare in anticipo le risorse probabilmente critiche.

Guida operativa: Interim optimization; a final response must follow.

2xx — Risposte di successo

200

OK

La richiesta è riuscita. La rappresentazione dipende dal metodo: GET restituisce la risorsa, HEAD restituisce i metadati senza corpo e un'azione di scrittura può restituire una rappresentazione del risultato.

Guida operativa: Use for a completed request with a response representation when appropriate.

201

Created

La richiesta è stata completata e ha creato una o più risorse. La risposta dovrebbe identificare la nuova risorsa, comunemente con Location, e può restituirne la rappresentazione.

Guida operativa: Typical after POST or PUT; ensure the created resource can be located.

202

Accepted

Il server ha accettato la richiesta per l'elaborazione, ma l'elaborazione non è terminata e potrebbe comunque fallire. L'HTTP non invia in seguito una seconda risposta per lo stesso scambio.

Guida operativa: Provide an operation/status URL or another way to learn the eventual outcome.

203

Non-Authoritative Information

Un proxy o intermediario di trasformazione ha restituito metadati o contenuti diversi rispetto alla risposta d'origine. Segnala che la risposta non è una rappresentazione autorevole diretta.

Guida operativa: Use only when an intermediary transformation is relevant.

204

No Content

La richiesta è riuscita e non c'è contenuto di risposta da inviare. Gli header possono comunque trasportare metadati utili, come validator aggiornati.

Guida operativa: Do not include a response body.

205

Reset Content

La richiesta è riuscita e il client riceve l'istruzione di ripristinare la vista o il modulo che l'ha inviata. Nessun contenuto di risposta viene inviato.

Guida operativa: Useful for interactions that should clear/reset the current input state.

206

Partial Content

Il server ha soddisfatto una richiesta di intervallo valido e restituisce solo l'intervallo o gli intervalli di byte richiesti. Content-Range descrive ciò che è stato consegnato.

Guida operativa: Ensure range and Content-Range values match; common for resumable media/downloads.

207

Multi-Status

Una risposta WebDAV segnala risultati separati per più risorse o sotto-operazioni, solitamente in un corpo XML strutturato.

Guida operativa: Interpret each embedded resource result; the outer status alone is not the full outcome.

208

Already Reported

Una risposta multistatus WebDAV omette i membri già elencati in precedenza nella stessa risposta per evitare di elencarli due volte.

Guida operativa: WebDAV-specific; interpret together with the surrounding multistatus response.

226

IM Used

Il server ha soddisfatto una richiesta GET utilizzando manipolazioni di istanza e restituisce una rappresentazione derivata dalla risorsa corrente in base al meccanismo delta negoziato.

Guida operativa: Specialized delta encoding; clients and servers must agree on the transformation.

3xx — Reindirizzamento e convalida della cache

300

Multiple Choices

La risorsa di destinazione ha più rappresentazioni o destinazioni e la risposta offre varie scelte. Un client o un utente può selezionare la variante preferita.

Guida operativa: Include clear alternatives; do not assume every client will choose automatically.

301

Moved Permanently

La risorsa ha un nuovo URI permanente. I client possono aggiornare i link memorizzati e le cache, quindi usalo solo quando il trasferimento è inteso come duraturo.

Guida operativa: For SEO migrations, redirect directly to the final equivalent URL and update internal links.

302

Found

La risorsa è temporaneamente disponibile presso un altro URI. Il comportamento storico consente modifiche del metodo in alcuni casi, quindi non è la scelta più sicura quando una richiesta POST deve rimanere tale.

Guida operativa: Use for temporary moves when method rewriting is acceptable; consider 307 when it is not.

303

See Other

Il client dovrebbe recuperare la risorsa indicata da Location con un metodo GET (o HEAD se appropriato), anziché ripetere l'azione originale. Viene comunemente usato dopo l'invio di un modulo.

Guida operativa: Implements the Post/Redirect/Get pattern and avoids resubmitting the action.

304

Not Modified

Una richiesta GET o HEAD condizionale indica che la rappresentazione memorizzata nella cache è ancora aggiornata. La risposta non ha corpo e consente al client di riutilizzare la sua copia salvata.

Guida operativa: Return only when a validator such as If-None-Match or If-Modified-Since matches.

305

Use Proxy

Una risposta storica proponeva che il client accedesse alla risorsa tramite un proxy. È deprecata per motivi di sicurezza e non dovrebbe essere utilizzata dai servizi moderni.

Guida operativa: Do not deploy; configure proxies out of band.

306

Unused

Questo valore è riservato/non utilizzato nelle specifiche HTTP moderne. Non ha alcun significato operativo standard per un'applicazione web corrente.

Guida operativa: Do not send it.

307

Temporary Redirect

La risorsa si trova temporaneamente presso un altro URI e il client deve preservare il metodo e il corpo originali quando segue il reindirizzamento.

Guida operativa: Use when temporary relocation must not turn POST into GET.

308

Permanent Redirect

La risorsa è stata spostata permanentemente e il client deve preservare il metodo e il corpo originali quando segue il reindirizzamento.

Guida operativa: Use for lasting moves where method preservation matters; update canonical/internal references.

4xx — Errori del client/richiesta

400

Bad Request

Il server non può elaborare la richiesta poiché la sua sintassi, la formattazione o i dati forniti non sono validi. Ripetere la stessa richiesta senza modifiche difficilmente risolverà il problema.

Guida operativa: Inspect URL encoding, JSON/body syntax, required fields, and request framing.

401

Unauthorized

La richiesta è priva di credenziali di autenticazione valide per la destinazione. Nonostante il nome, questa risposta indica che l'autenticazione è richiesta o è fallita.

Guida operativa: Send the expected credentials and include a WWW-Authenticate challenge.

402

Payment Required

Riservato per uso futuro, sebbene alcuni prodotti lo utilizzino per flussi di pagamento o quote. Non esiste un comportamento di pagamento universalmente interoperabile.

Guida operativa: Treat vendor-specific meanings as such; document the API contract.

403

Forbidden

Il server ha compreso la richiesta ma si rifiuta di eseguirla. Credenziali valide non cambiano necessariamente l'esito poiché la restrizione potrebbe basarsi su policy.

Guida operativa: Check permissions, access policy, IP/WAF rules, and resource-level authorization.

404

Not Found

Il server non riesce a trovare una rappresentazione corrente per l'URI richiesto, o non è disposto a rivelare che ne esista una. La risposta da sola non specifica se l'assenza sia temporanea o permanente.

Guida operativa: Repair the URL, restore the resource, or use 410 when removal is known to be permanent.

405

Method Not Allowed

La risorsa esiste, ma non supporta il metodo utilizzato in questa richiesta.

Guida operativa: Return an Allow header listing methods the resource accepts.

406

Not Acceptable

Il server non è in grado di produrre una rappresentazione che corrisponda alle preferenze di Accept proattive del client.

Guida operativa: Relax Accept constraints or configure a suitable representation/negotiation policy.

407

Proxy Authentication Required

Un proxy intermediario richiede le credenziali prima di inoltrare la richiesta.

Guida operativa: Authenticate to the proxy using Proxy-Authenticate / Proxy-Authorization; this is distinct from origin authentication.

408

Request Timeout

Il server non ha ricevuto la richiesta completa entro il tempo in cui era predisposto ad attendere. Il client può riprovare su una nuova connessione.

Guida operativa: Check network stalls, upload size, and server/proxy timeout settings.

409

Conflict

La richiesta è in conflitto con lo stato corrente della risorsa, come una collisione di versione o un tentativo di creare un duplicato.

Guida operativa: Explain the conflict and provide enough current state for the client to resolve it.

410

Gone

La risorsa è intenzionalmente e probabilmente permanentemente non disponibile, senza alcuna sostituzione nota. Questo è più forte di una generica risposta di risorsa non trovata.

Guida operativa: Use when removal is deliberate; remove obsolete internal links and references.

411

Length Required

Il server richiede un header Content-Length ma la richiesta non ne ha fornito alcuno.

Guida operativa: Send an accurate Content-Length or use a supported transfer framing.

412

Precondition Failed

Una condizione della richiesta come If-Match ha dato esito falso, quindi il server non ha eseguito l'azione richiesta.

Guida operativa: Refresh the representation and retry with current validators/state.

413

Content Too Large

Il corpo della richiesta supera un limite che il server è disposto o in grado di elaborare. Il server potrebbe chiudere la connessione o consentire un nuovo tentativo dopo aver ridotto il corpo.

Guida operativa: Reduce payload size or adjust documented upload limits.

414

URI Too Long

La destinazione della richiesta è più lunga di quanto il server sia disposto a interpretare, spesso a causa di una stringa di query sovradimensionata.

Guida operativa: Use a shorter URI or move suitable data into a request body.

415

Unsupported Media Type

Il server rifiuta il corpo della richiesta perché il suo tipo di media, la codifica dei contenuti o il formato ispezionato non sono supportati.

Guida operativa: Send a supported Content-Type/encoding and a body matching it.

416

Range Not Satisfiable

L'intervallo di byte richiesto non può essere servito, ad esempio perché inizia oltre la lunghezza della rappresentazione.

Guida operativa: Re-check resource length and range units; servers may return Content-Range: bytes */length.

417

Expectation Failed

Il server o l'intermediario non è in grado di soddisfare un'aspettativa dichiarata nell'header Expect.

Guida operativa: Retry without the unsupported expectation when safe and appropriate.

418

I'm a teapot

Uno stato umoristico originato da una specifica del pesce d'aprile. Non è un normale contratto di errore applicativo, sebbene alcuni servizi lo utilizzino in modo giocoso.

Guida operativa: Do not depend on it for interoperable production behavior.

421

Misdirected Request

La richiesta ha raggiunto un server che non può produrre una risposta autorevole per l'URI di destinazione, spesso perché il routing della connessione o l'autorità HTTP non corrispondono.

Guida operativa: Retry over a suitable connection and inspect Host/:authority, SNI, and proxy routing.

422

Unprocessable Content

Il tipo di contenuto e la sintassi sono compresi, ma il server non può applicare le istruzioni o convalidare il contenuto inviato.

Guida operativa: Return actionable field-level validation details; correcting the payload may allow success.

423

Locked

Una risorsa WebDAV è bloccata, quindi il metodo richiesto non può essere eseguito finché la condizione di blocco non viene risolta.

Guida operativa: Check lock ownership, timeout, and WebDAV lock-token handling.

424

Failed Dependency

Un'operazione WebDAV è fallita perché un'operazione precedente richiesta nella stessa sequenza di richieste è fallita.

Guida operativa: Resolve the earlier failed action before retrying dependent operations.

425

Too Early

Il server rifiuta di elaborare una richiesta che potrebbe essere stata replicata durante i dati iniziali, per ridurre il rischio di replay.

Guida operativa: Retry after the connection is established without early data.

426

Upgrade Required

Il server rifiuta il protocollo corrente e indica che il client dovrebbe passare a un altro.

Guida operativa: Include an Upgrade header that describes supported protocol choices.

428

Precondition Required

Il server richiede una richiesta condizionale per prevenire aggiornamenti perduti, ma il client ne ha inviata una incondizionata.

Guida operativa: Fetch current state and submit an appropriate condition such as If-Match.

429

Too Many Requests

Il client ha inviato troppe richieste in un dato periodo, in base a un limite di frequenza definito dal server.

Guida operativa: Back off, honor Retry-After when present, and avoid synchronized retry bursts.

431

Request Header Fields Too Large

Il server non elaborerà la richiesta perché uno o più header, o l'insieme combinato di header, sono troppo grandi.

Guida operativa: Reduce cookies/custom headers or adjust an intentional server limit.

451

Unavailable For Legal Reasons

Il server non può fornire la risorsa richiesta a causa di una restrizione legale.

Guida operativa: Where appropriate, explain the restriction and its scope without exposing protected information.

5xx — Errori del server e degli intermediari

500

Internal Server Error

Il server ha riscontrato una condizione imprevista e non può completare la richiesta. È un fallback generale quando non si applica alcun errore del server più preciso.

Guida operativa: Correlate the request with server logs and avoid exposing stack traces to visitors.

501

Not Implemented

Il server non supporta la funzionalità richiesta per evadere la richiesta, comunemente un metodo o una capacità non implementati.

Guida operativa: Implement the capability or use a supported method; it is not intended for temporary overload.

502

Bad Gateway

Un server che funge da gateway o proxy ha ricevuto una risposta non valida da un server upstream.

Guida operativa: Inspect upstream health, protocol/TLS settings, DNS, and proxy logs.

503

Service Unavailable

Il server è temporaneamente incapace di gestire la richiesta, spesso a causa di manutenzione o sovraccarico.

Guida operativa: If possible provide Retry-After, a helpful response, and cache controls suitable for a temporary failure.

504

Gateway Timeout

Un gateway o un proxy non ha ricevuto una risposta tempestiva da un servizio upstream.

Guida operativa: Investigate upstream latency, network paths, and timeout budgets across the chain.

505

HTTP Version Not Supported

Il server non supporta la versione principale di HTTP utilizzata nella richiesta.

Guida operativa: Use a supported protocol version or update server/proxy configuration.

506

Variant Also Negotiates

Un errore di configurazione del server ha creato un accordo circolare di negoziazione dei contenuti in cui la variante selezionata negozia di nuovo.

Guida operativa: Fix the variant/negotiation configuration; this is an origin-side fault.

507

Insufficient Storage

Un server WebDAV non può memorizzare la rappresentazione necessaria per completare l'operazione.

Guida operativa: Free or provision storage and check quotas before retrying.

508

Loop Detected

Un server ha rilevato un ciclo infinito durante l'elaborazione di una richiesta, comunemente durante l'attraversamento di associazioni WebDAV.

Guida operativa: Break the cyclic resource relationship or processing rule.

510

Not Extended

La richiesta richiede un'estensione che il server non supporta.

Guida operativa: Use a supported extension set or negotiate an alternative.

511

Network Authentication Required

Il client deve autenticarsi per ottenere l'accesso alla rete, tipicamente presso un captive portal. È inteso per intermediari di rete, non per il login a un sito Web di origine.

Guida operativa: Complete network access authentication, then retry the original request.

Risposte notevoli non standard e specifiche del provider

Questi valori si riscontrano in prodotti particolari, log di server, CDN o applicazioni. Non sono intercambiabili con i significati standard registrati; consulta il contratto del servizio che li genera.

419

Authentication Timeout (non-standard)

Alcune applicazioni usano questa etichetta quando una sessione di autenticazione scade. Non è uno stato HTTP assegnato universalmente, quindi i client non possono fare affidamento su una semantica coerente.

Guida operativa: Refresh authentication according to the service contract.

420

Enhance Your Calm (non-standard)

Una risposta specifica del vendor storicamente utilizzata per il throttling. Il suo significato è definito dall'implementazione.

Guida operativa: Follow documented rate-limit guidance.

444

Connection Closed (non-standard)

Alcuni server chiudono la connessione senza inviare una risposta convenzionale, spesso come misura di filtraggio.

Guida operativa: Check provider logs; clients may report a network error rather than display this code.

449

Retry With (non-standard)

Un'estensione Microsoft utilizzata da alcuni servizi per chiedere a un client di riprovare con informazioni aggiuntive.

Guida operativa: Follow the specific API documentation.

499

Client Closed Request (non-standard)

Un reverse proxy potrebbe registrare questo evento quando il client si disconnette prima che la risposta upstream sia completata. Solitamente è una classificazione di log piuttosto che una risposta recapitata a quel client.

Guida operativa: Investigate client cancellations and slow upstream requests.

509

Bandwidth Limit Exceeded (non-standard)

Alcune piattaforme di hosting utilizzano questo codice per una quota o un limite di banda. Non è un significato HTTP generale interoperabile.

Guida operativa: Check the host’s quota and billing configuration.

520

Web Server Returned an Unknown Error (vendor-specific)

Una CDN o un proxy possono utilizzare questo codice quando ricevono una risposta d'origine inattesa o vuota.

Guida operativa: Compare edge and origin logs; verify the origin emits a valid HTTP response.

521

Web Server Is Down (vendor-specific)

Un proxy non è riuscito a stabilire una connessione con l'origine o l'origine l'ha rifiutata.

Guida operativa: Check origin availability, firewall rules, and proxy allowlists.

522

Connection Timed Out (vendor-specific)

Un servizio di edge si è connesso o ha tentato di connettersi all'origine ma non ha completato lo scambio entro il proprio timeout.

Guida operativa: Review origin responsiveness and network latency.

523

Origin Is Unreachable (vendor-specific)

Un proxy non è riuscito a raggiungere l'indirizzo di origine configurato.

Guida operativa: Check DNS resolution, routing, and origin IP configuration.

524

A Timeout Occurred (vendor-specific)

La connessione all'origine è riuscita, ma l'origine non ha inviato una risposta HTTP tempestiva.

Guida operativa: Reduce origin processing time or adjust supported timeout settings.

525

SSL Handshake Failed (vendor-specific)

Un proxy non è riuscito a completare la negoziazione TLS con l'origine.

Guida operativa: Validate certificates, protocol/cipher compatibility, and SNI.

526

Invalid SSL Certificate (vendor-specific)

Un intermediario ha rifiutato il certificato di origine durante la convalida.

Guida operativa: Install a valid, correctly named, trusted, unexpired certificate and full chain.

527

Railgun Error (vendor-specific)

Uno stato del proxy legacy/specifico del vendor segnala un errore in una connessione di accelerazione dell'origine.

Guida operativa: Inspect the provider-specific connector and origin path.

598

Network Read Timeout (non-standard)

Alcuni client o proxy utilizzano questo valore per descrivere un timeout di lettura della rete. Non ha alcun significato HTTP universale.

Guida operativa: Inspect the client/proxy diagnostics.

599

Network Connect Timeout (non-standard)

Alcuni proxy utilizzano questo valore quando il tentativo di connessione di rete va in timeout. Il suo significato dipende dall'implementazione.

Guida operativa: Check reachability and timeout settings.

Utilizzo dei codici di stato nei reindirizzamenti e negli audit SEO

Per lo spostamento permanente di un URL, utilizza un reindirizzamento permanente solo quando la destinazione è intesa a sostituire il vecchio URL; per una modifica temporanea, seleziona una risposta temporanea. Mantieni le catene brevi e punta alla destinazione equivalente finale. Conferma che ogni valore Location si risolva correttamente, che la risposta finale sia appropriata e che i tag canonical e i link interni concordino con l'URL desiderato. Un 2xx alla fine conferma una risposta di successo HTTP, non che la pagina sia utile, indicizzabile o tecnicamente sana.