Vai al contenuto principale

I codici di stato HTTP spiegati

La prima cifra di un codice di stato stabilisce la famiglia: 1xx informativo, 2xx successo, 3xx reindirizzamento, 4xx errore client, 5xx errore server.

Controllo gratuito 401 Unauthorized: cosa significa e come risolverlo

Un 401 significa che alla richiesta mancano credenziali valide. L'header WWW-Authenticate, i token scaduti, il disallineamento dell'orologio, e 401 contro 403.

Apri →
Controllo gratuito 405 Method Not Allowed: cause e soluzioni

Un 405 significa che la risorsa esiste ma rifiuta il metodo HTTP usato. L'header Allow, i file statici, il preflight CORS, nginx e le rotte del framework.

Apri →
Controllo gratuito 406 Not Acceptable: cosa significa e come risolverlo

Un 406 significa che il server non riesce a corrispondere a ciò che il client accetta. La negoziazione del contenuto, la causa comune ModSecurity/WAF, e come risolverlo.

Apri →
Controllo gratuito 413 Request Entity Too Large: cause e soluzioni

Un 413 significa che il corpo della richiesta è più grande di un limite impostato. nginx, Apache, PHP, IIS, Cloudflare e i limiti di caricamento del gateway API.

Apri →
Controllo gratuito 422 Unprocessable Entity: cosa significa e come risolverlo

Un 422 significa che la richiesta si interpreta bene ma un valore fallisce la convalida. Rails, Laravel e FastAPI, 422 contro 400, e leggere il corpo dell'errore.

Apri →
Controllo gratuito Codice di stato 499: cosa intende nginx per client closed request

Un 499 significa che il client si è disconnesso prima che nginx finisse di rispondere. Il log di accesso nginx, gli upstream lenti, e l'allineamento dei timeout.

Apri →
Controllo gratuito 400 Bad Request: cosa significa e come risolverlo

Un 400 significa che il server non è riuscito a interpretare la richiesta. Cookie sovradimensionati, URL errati, limiti degli header, regole WAF e come distinguerli.

Apri →
Controllo gratuito 200 OK: cosa significa e cosa nasconde

200 OK significa che la richiesta è riuscita, non che la pagina sia corretta. Pagine di errore, avvisi di manutenzione e gusci vuoti sono tutti serviti a 200.

Apri →
Controllo gratuito 300 Multiple Choices: il codice che non vedrai quasi mai

300 offre al client un elenco di rappresentazioni tra cui scegliere. È HTTP valido ma quasi mai usato, e chi lo cerca di solito ha un 301 o 302.

Apri →
Controllo gratuito 301 vs 302: reindirizzamenti permanenti e temporanei

Il 301 sposta un URL permanentemente e ne trasferisce i segnali di posizionamento; il 302 è una deviazione temporanea che mantiene l'originale. Come scegliere.

Apri →
Controllo gratuito 303 See Other: il redirect dopo un POST di modulo

303 dice al client di recuperare il risultato a un altro URL con GET. È il codice dietro Post/Redirect/Get, che evita che un ricaricamento reinvii un modulo.

Apri →
Controllo gratuito 304 Not Modified: perché è un successo, non un errore

304 significa che la tua copia in cache è ancora valida, quindi il server non invia il corpo. Risponde solo a richieste condizionali con ETag o Last-Modified.

Apri →
Controllo gratuito 403 Forbidden: cause, soluzioni e blocchi bot che ingannano i monitor

Un 403 significa che il server rifiuta la richiesta e le credenziali non aiuteranno. Permessi, blocchi WAF e geografici, e mettere in allowlist un monitor.

Apri →
Controllo gratuito 404 Not Found: link rotti, soft 404 e quando usare 410

Un 404 dice che l'URL non ha contenuto attuale, nulla di più. Impara a distinguere link rotti da rimozioni deliberate, e a individuare i soft 404 che restituiscono 200.

Apri →
Controllo gratuito 429 Too Many Requests: limiti di frequenza e falsi allarmi

Un 429 è un limite di frequenza, non un'interruzione. Impara a leggere Retry-After, distinguere il throttling dal downtime, e non far scattare il limite da solo.

Apri →
Controllo gratuito 500 Internal Server Error: cause, log e differenze dal 502

Un 500 significa che la tua applicazione si è rotta e non dirà come. Dove trovare l'errore reale, e come 500 differisce da 502, 503 e 504.

Apri →
Controllo gratuito 502 Bad Gateway: cosa si è rotto dietro il proxy e come trovarlo

Un 502 significa che il tuo proxy ha ricevuto dal backend una risposta non valida o nessuna risposta. Come leggere la riga di errore nginx e correggere la causa.

Apri →
Controllo gratuito 503 Service Unavailable: sovraccarico, manutenzione e Retry-After

Un 503 significa che il server è vivo e rifiuta il lavoro di proposito. Impara gli schemi di sovraccarico, manutenzione e deployment, e perché conta Retry-After.

Apri →
Controllo gratuito 504 Gateway Timeout: backend lenti, timeout e 502 vs 503 vs 504

Un 504 significa che il proxy ha aspettato troppo il tuo backend. Query lente, cold start, tuning dei timeout e un confronto chiaro tra 502, 503 e 504.

Apri →
Controllo gratuito Codici di stato 2xx di successo

2xx significa che il server ha accettato e completato la richiesta. Cosa significano 200, 201, 202, 204 e 206, e perché un 200 non è prova di salute.

Apri →
Controllo gratuito Codici di stato 4xx spiegati: cosa significano davvero gli errori client

Un 4xx significa che il server ha rifiutato la richiesta. Sul tuo sito di solito è una rotta rotta, un link obsoleto o una regola firewall, non il visitatore.

Apri →
Controllo gratuito Codici di stato 5xx spiegati: quando il problema è il tuo server

Un 5xx significa che il server ha accettato la richiesta e poi ha fallito. Ogni codice nomina un salto diverso: cosa si è rotto, e come rintracciarlo.

Apri →
Controllo gratuito Codici di stato di reindirizzamento 3xx

Un 3xx dice al client che la risorsa vive altrove. Cosa significano da 300 a 308, quale usare, e come trovare catene di reindirizzamento rotte.

Apri →
Controllo gratuito Codici di stato informativi 1xx

Una risposta 1xx è provvisoria: il server ha ricevuto la richiesta e una vera risposta finale sta ancora arrivando. Non è un successo e non è un errore.

Apri →

Un codice di stato HTTP è il numero a tre cifre che un server restituisce con ogni risposta, e la sua prima cifra ti dice a quale delle cinque famiglie appartiene: 1xx informativo, 2xx successo, 3xx reindirizzamento, 4xx errore client e 5xx errore server. Leggi quella prima cifra e sai già se la richiesta ha funzionato, è stata inviata altrove, è stata rifiutata, o si è rotta.

La cosa più utile che un codice di stato ti dà è un punto di partenza per stabilire la responsabilità. Un 4xx significa che il server ha capito la richiesta e l'ha rifiutata, quindi il problema di norma sta dal lato di chi richiede o nelle tue regole di instradamento e accesso: un URL sbagliato, un file mancante, una credenziale scaduta, un rate limit. Con un 5xx la richiesta andava bene e la tua infrastruttura non è riuscita a soddisfarla, quindi guarda dietro la tua porta d'ingresso, a un'eccezione applicativa, a un servizio a monte che è giù, o a un proxy che è andato in timeout aspettando un backend. Un 3xx non è né un fallimento né una risposta conclusa. È un'istruzione ad andare da qualche altra parte, e se è l'istruzione giusta dipende interamente da come l'hai configurata.

Le guide sotto coprono i codici che le persone cercano quando un sito si comporta male: l'intera famiglia di reindirizzamenti 3xx e la differenza tra un reindirizzamento permanente e uno temporaneo, cosa dimostra e cosa non dimostra un semplice 200, perché le risposte 304 sono un segno di una cache sana invece che un errore, e i codici 4xx e 5xx che compaiono negli incidenti reali. Per vedere cosa restituisce un URL in questo momento, inclusa l'intera catena di reindirizzamenti che attraversa, passalo attraverso lo strumento di controllo HTTP.