Riferimento Codici di Stato HTTP
Riferimento completo dei codici di stato HTTP — tutti i codici 1xx, 2xx, 3xx, 4xx e 5xx spiegati con significati, casi d'uso e impatto SEO.
Aggiornato maggio 2026
Revisionato da Rafael Duarte
Continue
Il server ha ricevuto gli header della richiesta e il client può procedere con l'invio del corpo della richiesta.
Switching Protocols
Il server accetta di cambiare protocollo, come richiesto dal client tramite l'header Upgrade.
Processing
Il server ha ricevuto la richiesta e la sta elaborando, ma non è ancora disponibile una risposta.
Early Hints
Serve a restituire header prima della risposta HTTP finale, così il browser può iniziare a precaricare le risorse.
OK
La richiesta è andata a buon fine e il server ha restituito la risorsa richiesta. Indispensabile perché Google indicizzi una pagina.
Created
La richiesta è andata a buon fine ed è stata creata una nuova risorsa. Tipico nelle API REST dopo una richiesta POST.
Accepted
La richiesta è stata accettata per l'elaborazione, ma l'elaborazione non è ancora conclusa.
Non-Authoritative Information
La richiesta è andata a buon fine, ma i metadati restituiti provengono da una copia locale o di terze parti, non dal server di origine.
No Content
La richiesta è andata a buon fine, ma non c'è alcun contenuto da restituire. Tipico nelle risposte API a DELETE o PATCH.
Reset Content
Il server ha evaso la richiesta e chiede al client di reimpostare la vista del documento (ad es. svuotare un modulo).
Partial Content
Il server restituisce solo una parte della risorsa a causa di un header Range. Usato nello streaming e nei download riprendibili.
Multi-Status
Trasmette informazioni su più risorse quando possono applicarsi più codici di stato. Usato in WebDAV.
Already Reported
I membri di un binding DAV sono già stati elencati in una parte precedente della risposta.
IM Used
Il server ha evaso una richiesta GET e la risposta rappresenta il risultato di una o più manipolazioni d'istanza.
Multiple Choices
La richiesta ha più di una risposta possibile. Lo user agent o l'utente deve sceglierne una.
Moved Permanently
La risorsa è stata spostata in modo permanente a un nuovo URL. Trasferisce tutta l'autorità del link: usalo per ogni redirect permanente e per le migrazioni a HTTPS.
Found
La risorsa è stata spostata temporaneamente. Google trasmette i segnali anche con i 302, ma usa un 301 per gli spostamenti permanenti ed evitare confusione sul canonical.
See Other
Il server reindirizza il client a un'altra risorsa tramite una richiesta GET. Spesso usato dopo un POST per evitare il reinvio di un modulo.
Not Modified
La risorsa non è cambiata dall'ultima richiesta: il browser deve usare la versione in cache. Riduce la banda nelle visite successive.
Temporary Redirect
Come il 302, ma mantiene esplicitamente il metodo HTTP. Da usare quando un redirect temporaneo deve preservare il metodo.
Permanent Redirect
Come il 301, ma mantiene il metodo HTTP. Usato nelle API che devono reindirizzare in modo permanente richieste POST.
Bad Request
Il server non può elaborare la richiesta per sintassi malformata o parametri non validi. Tipico nelle API con campi mancanti o non validi.
Unauthorized
È richiesta un'autenticazione che non è stata fornita o non è valida. Significa "Chi sei?": da non confondere con il 403.
Payment Required
Riservato per usi futuri. Pensato in origine per i sistemi di pagamento digitale; oggi alcune API lo usano per segnalare limiti di quota.
Forbidden
Il server ha compreso la richiesta ma rifiuta di autorizzarla. Il client è noto ma non ha i permessi. Diverso dal 401.
Not Found
Il server non trova la risorsa richiesta. È l'errore più comune del web. Reindirizza le pagine 404 importanti con un 301.
Method Not Allowed
Il metodo HTTP usato non è consentito per la risorsa richiesta. La risposta deve includere un header Allow con i metodi validi.
Not Acceptable
Il server non può produrre una risposta compatibile con i valori accettati negli header Accept della richiesta.
Proxy Authentication Required
È necessaria l'autenticazione presso il server proxy prima che la richiesta possa essere evasa.
Request Timeout
Il server ha esaurito il tempo di attesa della richiesta. Il client può ripetere la richiesta senza modifiche.
Conflict
La richiesta è in conflitto con lo stato attuale della risorsa. Tipico quando si tenta di creare un record duplicato.
Gone
La risorsa è stata rimossa in modo permanente e non tornerà. Segnale di rimozione più forte del 404: Google deindicizza più in fretta gli URL in 410.
Length Required
Il server rifiuta la richiesta senza un header Content-Length definito.
Precondition Failed
Il server non soddisfa una o più precondizioni impostate negli header della richiesta.
Content Too Large
Il corpo della richiesta è più grande di quanto il server sia disposto a elaborare. Il server può chiudere la connessione.
URI Too Long
L'URI richiesto dal client è più lungo di quanto il server sia disposto a interpretare.
Unsupported Media Type
Il formato dei dati inviati non è supportato dal server. Controlla l'header Content-Type.
Range Not Satisfiable
Il server non può fornire gli intervalli richiesti: il valore dell'header Range supera la dimensione reale della risorsa.
Expectation Failed
Il server non può soddisfare le aspettative indicate nell'header di richiesta Expect.
I'm a Teapot
Il server si rifiuta di preparare il caffè perché è, in modo permanente, una teiera. Un pesce d'aprile della RFC 2324 (1998), oggi un easter egg del web.
Misdirected Request
La richiesta è stata indirizzata a un server che non può produrre una risposta per questa combinazione di schema e authority.
Unprocessable Content
La richiesta è sintatticamente valida ma semanticamente errata. Tipico nelle API REST con validazione rigorosa dei campi.
Locked
La risorsa a cui si accede è bloccata. Usato in WebDAV per indicare che la risorsa è bloccata.
Failed Dependency
La richiesta è fallita perché dipendeva da un'altra richiesta fallita. Usato in WebDAV.
Too Early
Il server non vuole rischiare di elaborare una richiesta che potrebbe essere ripetuta, per prevenire attacchi di replay.
Upgrade Required
Il client deve passare a un altro protocollo. Il server invia un header Upgrade con il protocollo richiesto.
Precondition Required
Il server di origine richiede che la richiesta sia condizionale. Evita il problema del "lost update" nelle API REST.
Too Many Requests
Il client ha inviato troppe richieste in un dato intervallo di tempo (rate limiting). Se Googlebot riceve dei 429, il crawl budget viene ridotto.
Request Header Fields Too Large
Il server rifiuta di elaborare la richiesta perché i campi dell'header sono troppo grandi.
Unavailable For Legal Reasons
Il server non può fornire legalmente la risorsa richiesta. Il nome viene da Fahrenheit 451. Usato in casi di censura o blocco legale.
Internal Server Error
Errore generico lato server. Errori 500 persistenti portano Google a ridurre la frequenza di scansione e possono causare la deindicizzazione. Monitorali in Search Console.
Not Implemented
Il server non supporta la funzionalità necessaria per evadere la richiesta. Il metodo non è riconosciuto o non è implementato.
Bad Gateway
Il server ha ricevuto una risposta non valida da un server upstream. Tipico con Nginx o Cloudflare quando il server applicativo va in crash o è sovraccarico.
Service Unavailable
Il server è temporaneamente non disponibile: sovraccarico o in manutenzione. Includi un header Retry-After per evitare la deindicizzazione da parte di Google.
Gateway Timeout
Il gateway non ha ricevuto in tempo una risposta dal server upstream. Tipico quando una query al database o una chiamata API impiega troppo.
HTTP Version Not Supported
Il server non supporta la versione HTTP usata nella richiesta.
Variant Also Negotiates
Il server ha un errore di configurazione interno: la variante scelta è configurata per eseguire a sua volta la negoziazione dei contenuti.
Insufficient Storage
Il server non può memorizzare la rappresentazione necessaria per completare la richiesta. Usato in WebDAV.
Loop Detected
Il server ha rilevato un loop infinito durante l'elaborazione della richiesta. Usato in WebDAV.
Not Extended
Sono necessarie ulteriori estensioni della richiesta perché il server possa evaderla.
Network Authentication Required
Il client deve autenticarsi per ottenere l'accesso alla rete. Usato dai captive portal (Wi-Fi degli hotel, ecc.) per intercettare le richieste HTTP.
Come consultare i codici di stato HTTP
Elenco completo 1xx–5xx, con ricerca istantanea e filtro per classe
1. Cerca il codice
Digita il numero (404, 502) o il nome standard del codice (Not Found, Bad Gateway): la griglia si filtra mentre scrivi.
2. Oppure filtra per classe
I pulsanti 1xx, 2xx, 3xx, 4xx e 5xx mostrano solo una famiglia, con il numero di codici accanto a ciascun filtro.
3. Leggi significato e note pratiche
Ogni scheda riporta codice, nome ufficiale e una spiegazione; per i codici più usati c'è anche l'effetto su API REST e scansione di Google.
Cosa trovi in questo elenco dei codici HTTP
61 codici di risposta, non solo i soliti cinque
Tutte le classi, dai 1xx ai 5xx
Dai codici informativi come 103 Early Hints fino ai meno noti come 451 e 511, ciascuno con il proprio significato.
Note SEO sui codici chiave
Per 200, 301, 302, 410, 429, 500 e 503 la descrizione spiega l'effetto di quella risposta sulla scansione e sull'indicizzazione di Google.
Indicazioni per le API REST
Quando restituire 201 invece di 200, perché 204 non ha corpo, cosa comunica 422 rispetto a 400.
Codici più comuni evidenziati
Un pallino accanto al nome segnala i codici che si incontrano ogni giorno, così l'elenco si scorre più in fretta.
Scorciatoia per la ricerca
Ctrl+K porta il cursore nel campo di ricerca da qualsiasi punto della pagina e ne seleziona il contenuto.
Nessuna chiamata di rete
L'elenco è incluso nella pagina: la ricerca e i filtri funzionano nel browser, senza inviare nulla a un server.
Le cinque classi dei codici di risposta HTTP
La prima cifra dice già chi ha sbagliato
Quando ti serve un riferimento sui codici HTTP
Sviluppo, SEO e assistenza tecnica
Capire un errore 502 o 504
Il proxy (Nginx, un CDN) non ha ricevuto una risposta valida o puntuale dall'applicazione: il problema è a monte, non nel browser.
Scegliere tra redirect 301 e 302
Migrazione a HTTPS o cambio di dominio vogliono un 301; una promozione stagionale o un test A/B un 302 o un 307.
Progettare le risposte di un'API
Restituisci 201 alla creazione, 204 quando non c'è corpo, 409 per un duplicato e 422 per dati che non superano la validazione.
Indagare un calo di indicizzazione
Pagine che rispondono 404, 410 o 5xx persistenti escono dall'indice: il rapporto di Search Console ti dice quali, qui capisci perché.
Decifrare la risposta di un servizio esterno
Un gateway di pagamento o un webhook restituisce un codice che non conosci? Cerca il numero prima di decidere se ritentare.
Ripassare per un colloquio tecnico
Le differenze 401/403, 301/308 e 404/410 sono domande classiche nei colloqui per sviluppatori web.
Errori frequenti con i codici di stato
Rispondere 200 OK anche agli errori dell'API
Se l'errore sta solo nel JSON di risposta, client, librerie HTTP, cache e monitoraggio lo considerano un successo. Usa il codice 4xx o 5xx corretto insieme al corpo.
Il soft 404
Una pagina vuota o "prodotto non trovato" che risponde 200 viene trattata da Google come assente, ma continua a consumare scansioni. Restituisci un vero 404 o 410.
Catene di redirect
301 → 301 → 301 rallenta utenti e crawler. Fai puntare ogni vecchio URL direttamente alla destinazione finale.
Confondere 401 e 403
401 vuol dire "non so chi sei": manca l'autenticazione o non è valida. 403 vuol dire "so chi sei, ma non hai il permesso".
Perché usare questo riferimento
Non è una tabella da scorrere riga per riga: cerchi il numero o il nome e la griglia si restringe subito, oppure isoli una sola classe con un clic. Ogni scheda unisce la definizione formale a una nota pratica su quando usare quel codice.
I nomi dei codici restano quelli ufficiali in inglese (le reason phrase della RFC 9110), cioè gli stessi che leggerai nei log, negli strumenti per sviluppatori del browser e nelle risposte delle API.
Redirect 301 o 302?
Permanente contro temporaneo
Domande frequenti
404 Not Found dice che la risorsa non è stata trovata, senza escludere che torni in futuro. 410 Gone dichiara che è stata rimossa per sempre. Per Google entrambi portano alla rimozione dall'indice; il 410 è il segnale più esplicito quando una pagina non tornerà.
Riferimenti
Elenco in italiano dei codici di stato e dei relativi messaggi definiti per il protocollo HTTP.
Lo standard IETF (in inglese) che definisce la semantica dei codici di stato HTTP.
Come Googlebot interpreta 2xx, 3xx, 4xx, 429 e 5xx durante la scansione (in inglese).
Strumenti correlati
- Generatore di User Agent Sviluppatore Generatore di User Agent gratuito. Crea stringhe UA personalizzate per Chrome, Firefox, Safari, bot e dispositivi mobili. Nessuna registrazione.
- Analizzatore User Agent Sviluppatore Analizza qualsiasi stringa user agent in modo istantaneo. Identifica browser, sistema operativo, tipo di dispositivo e motore di rendering — gratis, online.
- Generatore Tabella ASCII e Markdown Sviluppatore Generatore tabelle ASCII gratuito — crea tabelle testo in stile MySQL, Markdown, Unicode, arrotondato, doppia linea e reStructuredText. Incolla CSV, copia...
- Decodificatore Base64 Sviluppatore Decodifica stringhe Base64 in testo semplice istantaneamente nel browser. Supporta UTF-8, input multiriga e mostra il conteggio dei caratteri originali.
- Codificatore Base64 Sviluppatore Codifica qualsiasi testo in Base64 istantaneamente nel browser. Supporta UTF-8, mostra il conteggio dei caratteri e la dimensione del payload. Gratuito...