Ogni volta che apri una pagina, il server risponde al browser con un numero di tre cifre prima ancora di inviare il contenuto. Quel numero è il codice di stato HTTP: dice se la richiesta è andata a buon fine, se la pagina si è spostata, se manca o se il server ha avuto un problema. La maggior parte delle volte è invisibile, perché il codice è 200 e tutto funziona. Diventa visibile quando qualcosa va storto, e allora compare un 404, un 500 o un 503.
In questa guida trovi il significato delle cinque classi di codici, una tabella con quelli che incontrerai più spesso, il modo per verificarli e il loro impatto sulla SEO. Per ciascun errore principale c’è poi una guida dedicata con cause e soluzioni passo per passo. Se invece il browser non mostra un numero ma una sigla come ERR_CONNECTION_REFUSED, il server non ha nemmeno risposto: in quel caso la guida giusta è quella sugli errori del browser.
Le cinque classi di codici
La prima cifra del codice indica la categoria della risposta, ed è sufficiente a capire a grandi linee che cosa sta succedendo.
- 1xx, informativi: risposte provvisorie, che non vedrai quasi mai da utente.
- 2xx, successo: la richiesta è stata ricevuta, compresa ed eseguita.
- 3xx, reindirizzamento: la risorsa si trova altrove e il browser deve fare un’altra richiesta.
- 4xx, errore del client: la richiesta ha un problema, per esempio chiede una pagina che non esiste o a cui non si ha accesso.
- 5xx, errore del server: la richiesta era corretta, ma il server non è riuscito a soddisfarla.
La distinzione tra 4xx e 5xx è la più utile nella pratica. Un errore 4xx dice che il problema riguarda la richiesta: l’indirizzo, i permessi, le credenziali. Un errore 5xx dice che il problema è sul server: codice, configurazione, risorse. Questo orienta subito la ricerca della causa.
I codici di successo e di reindirizzamento
Tra i codici 2xx, quello che conta è il 200 OK: la pagina esiste ed è stata servita. Il 204 No Content indica una richiesta riuscita senza contenuto da restituire, comune nelle chiamate delle applicazioni web. Il 304 Not Modified, pur appartenendo ai reindirizzamenti, segnala in realtà che la risorsa non è cambiata dall’ultima visita e che il browser può usare la copia in cache: è un segnale di buona configurazione, non un errore.
Tra i reindirizzamenti, i due fondamentali sono il 301 Moved Permanently, che indica uno spostamento definitivo e trasferisce il valore SEO al nuovo indirizzo, e il 302 Found, che indica uno spostamento temporaneo. Usare un 302 al posto di un 301 per un cambio definitivo di URL è uno degli errori tecnici più comuni nelle migrazioni dei siti. Esistono anche il 307 e il 308, equivalenti rispettivamente al 302 e al 301 ma con la garanzia che il metodo della richiesta non venga modificato.
Gli errori 4xx più comuni
| Codice | Nome | Cosa significa in pratica |
|---|---|---|
| 400 | Bad Request | La richiesta è malformata: URL non valido, cookie corrotti o intestazioni troppo grandi |
| 401 | Unauthorized | Serve un’autenticazione, oppure le credenziali inviate non sono valide |
| 403 | Forbidden | Il server ha capito la richiesta ma rifiuta di soddisfarla, spesso per permessi o regole di sicurezza |
| 404 | Not Found | La pagina richiesta non esiste a quell’indirizzo |
| 405 | Method Not Allowed | Il metodo usato, per esempio POST, non è consentito per quella risorsa |
| 406 | Not Acceptable | Il server non può rispondere nel formato richiesto; spesso è un falso positivo di un firewall applicativo |
| 409 | Conflict | La richiesta è in conflitto con lo stato attuale della risorsa |
| 410 | Gone | La risorsa è stata rimossa definitivamente e non tornerà |
| 413 | Content Too Large | Il file o i dati inviati superano il limite consentito dal server |
| 422 | Unprocessable Content | La richiesta è corretta nella forma ma contiene dati non validi |
| 429 | Too Many Requests | Sono state fatte troppe richieste in poco tempo e il server le limita |
| 431 | Request Header Fields Too Large | Le intestazioni della richiesta, spesso i cookie, sono troppo grandi |
Tra questi, i più frequenti nella vita di un sito sono il 404 e il 403. Le guide dedicate all’errore 403, all’errore 401 e all’errore 400 spiegano come risolverli.
Gli errori 5xx più comuni
| Codice | Nome | Cosa significa in pratica |
|---|---|---|
| 500 | Internal Server Error | Errore generico del server, quasi sempre nel codice o nella configurazione |
| 502 | Bad Gateway | Un server intermedio, come un proxy o un CDN, ha ricevuto una risposta non valida dal server di origine |
| 503 | Service Unavailable | Il server è temporaneamente non disponibile per manutenzione o sovraccarico |
| 504 | Gateway Timeout | Un server intermedio non ha ricevuto risposta in tempo dal server di origine |
| 508 | Loop Detected | Il server ha rilevato un ciclo infinito; su alcuni hosting indica anche il superamento dei limiti di risorse |
Alcuni CDN, Cloudflare in particolare, usano anche codici non standard della serie 52x, come 520 o 522, per indicare problemi di comunicazione tra il CDN e il server dell’hosting. Per gli errori più diffusi trovi le guide all’errore 500 e all’errore 503.
Come verificare il codice di stato di una pagina
Non serve aspettare che compaia un errore per conoscere il codice di una pagina. Il modo più immediato è aprire gli strumenti per sviluppatori del browser con il tasto F12, andare nella scheda Rete e ricaricare la pagina: la colonna Stato mostra il codice di ogni risorsa caricata. Da terminale, il comando curl -I seguito dall’indirizzo restituisce le sole intestazioni della risposta, codice compreso, ed è utile anche per seguire una catena di reindirizzamenti.
Per avere una visione d’insieme del sito, il rapporto Pagine di Google Search Console elenca gli indirizzi che restituiscono errori o reindirizzamenti durante la scansione di Google. In alternativa, gli strumenti di crawling come Screaming Frog analizzano tutto il sito e mostrano il codice di ogni URL. Per capire quando e perché un errore si è verificato, invece, la fonte più completa sono i log del server; e se il sito è costruito con WordPress, molti errori 500 e 503 hanno cause applicative che trovi nella guida agli errori di WordPress.
Tutte le guide su questi temi sono raccolte nella sezione dedicata agli errori del sito web.
Quale codice usare quando modifichi il sito
I codici di stato non sono solo qualcosa da subire quando compare un errore: chi gestisce un sito li sceglie ogni volta che sposta, elimina o sospende una pagina. Ecco le situazioni più comuni e il codice corretto per ciascuna.
Hai cambiato l’indirizzo di una pagina in modo definitivo. Usa un 301 verso il nuovo indirizzo. È il caso di un cambio di slug, di una riorganizzazione delle categorie o del passaggio da HTTP a HTTPS. Il 301 trasferisce ai nuovi indirizzi i segnali accumulati da quelli vecchi, compresi i link ricevuti da altri siti.
Hai eliminato una pagina e non c’è un contenuto equivalente. Lascia che risponda 404, oppure usa un 410 se vuoi comunicare con certezza che non tornerà. Evita di reindirizzare tutte le pagine eliminate alla home: Google tratta questi reindirizzamenti generici come soft 404 e non trasferisce alcun valore.
Hai eliminato una pagina ma esiste un contenuto molto simile. Reindirizza con un 301 verso quel contenuto. Per esempio, se unisci due guide in una sola più completa, l’indirizzo di quella eliminata deve puntare a quella che resta.
Stai sospendendo temporaneamente una pagina o tutto il sito. Usa un 302 per una pagina che tornerà, come una promozione stagionale, e un 503 con Retry-After per una manutenzione dell’intero sito.
Vuoi che una pagina esista ma non sia nei risultati di ricerca. Non serve un codice di errore: la pagina risponde 200 e si esclude dall’indice con il meta tag noindex. Un errore usato al posto del noindex rende la pagina inaccessibile anche ai visitatori.
Codici di stato e SEO
I codici di stato sono il linguaggio con cui il sito parla ai motori di ricerca, e usarli correttamente ha effetti concreti sulla visibilità.
Una pagina che restituisce 200 può essere indicizzata. Un 404 o un 410 dicono che la pagina non esiste: Google la rimuove dall’indice dopo averla ricontrollata, più rapidamente nel caso del 410. Avere dei 404 è normale e non penalizza il sito, purché non riguardino pagine importanti o linkate da altri siti, che andrebbero reindirizzate con un 301 verso il contenuto più pertinente. Attenzione invece ai soft 404, pagine vuote o di errore che rispondono 200: confondono Google e sprecano risorse di scansione.
Gli errori 5xx sono più delicati. Se sono occasionali, Google riprova più tardi senza conseguenze. Se persistono per giorni, Google riduce la frequenza di scansione e può rimuovere le pagine dai risultati. Per questo, durante una manutenzione programmata, la risposta corretta è un 503 con l’intestazione Retry-After, che indica quando tornare.
Domande frequenti
Che differenza c’è tra errore 401 e 403?
Il 401 significa che manca un’autenticazione valida: fornendo le credenziali giuste, l’accesso sarà consentito. Il 403 significa che il server rifiuta l’accesso indipendentemente dalle credenziali, per permessi o regole di sicurezza.
I codici 3xx sono un problema?
No, sono il modo corretto di gestire contenuti spostati. Diventano un problema quando formano catene di più reindirizzamenti consecutivi, che rallentano il caricamento, o cicli infiniti, che rendono la pagina irraggiungibile.
Perché vedo un errore che non è nell’elenco?
Alcuni server, CDN e applicazioni usano codici non standard per situazioni specifiche. In questi casi conviene cercare il codice insieme al nome del servizio che lo restituisce, perché il significato può cambiare da un fornitore all’altro.








