Sviluppo

Codici di stato HTTP: elenco completo e significato

Riferimento consultabile di tutti i codici di stato HTTP con significato, causa tipica e cosa fare in ciascun caso.

Disponibile anche in:EnglishEspañolPortuguêsFrançaisDeutschNederlandsPolski

100

Continue

Il server ha ricevuto le intestazioni della richiesta e il client può inviare il corpo della richiesta.

101

Switching Protocols

Il server sta cambiando protocollo come richiesto, il più delle volte verso WebSocket.

200

OK

La risposta di successo standard. Il corpo contiene la risorsa richiesta.

201

Created

La richiesta è andata a buon fine ed è stata creata una nuova risorsa. Il suo indirizzo viene restituito nell'intestazione Location.

202

Accepted

La richiesta è stata accettata per l'elaborazione ma non è ancora completa. Comune per le attività asincrone.

204

No Content

Successo senza contenuto da restituire. Molto usato per DELETE e per gli aggiornamenti con PUT.

206

Partial Content

Il server restituisce solo una parte della risorsa in risposta a un'intestazione Range, come nello streaming video.

301

Moved Permanently

La risorsa si è spostata in modo permanente. Trasferisce i segnali di posizionamento al nuovo URL: è il reindirizzamento corretto per un cambiamento definitivo.

302

Found

Un reindirizzamento temporaneo. I motori di ricerca mantengono indicizzato l'URL originale, quindi non usarlo mai per uno spostamento definitivo.

304

Not Modified

La copia nella cache è ancora valida. Viene inviata in risposta a una richiesta condizionale e fa risparmiare banda.

307

Temporary Redirect

Come il 302, ma garantisce che il metodo HTTP non cambi durante il reindirizzamento.

308

Permanent Redirect

Come il 301, ma conserva il metodo e il corpo della richiesta.

400

Bad Request

Il server non è riuscito a interpretare la richiesta. Di solito è un JSON malformato o un parametro obbligatorio mancante.

401

Unauthorized

Manca l'autenticazione oppure non è valida. Nonostante il nome, riguarda l'autenticazione e non i permessi.

403

Forbidden

L'identità è nota ma non è autorizzata a compiere questa azione. Ripetere il tentativo con le stesse credenziali non servirà a nulla.

404

Not Found

Nessuna risorsa a questo URL. Deve restituire un vero stato 404: una pagina di «non trovato» che risponde 200 è un soft 404.

405

Method Not Allowed

L'URL esiste ma non accetta questo metodo HTTP. Includi un'intestazione Allow con l'elenco dei metodi accettati.

409

Conflict

La richiesta è in conflitto con lo stato attuale, ad esempio una chiave univoca duplicata o una versione non aggiornata.

410

Gone

Rimosso deliberatamente e in modo permanente. I motori di ricerca eliminano un 410 dall'indice più velocemente di un 404.

418

I'm a teapot

Uno scherzo del pesce d'aprile del 1998 che browser e server mantengono vivo da allora.

422

Unprocessable Content

La sintassi è valida ma il contenuto non supera le regole di validazione. Comune nelle API JSON.

429

Too Many Requests

Limite di richieste superato. Includi un'intestazione Retry-After per indicare ai client quando riprovare.

500

Internal Server Error

Un'eccezione non gestita sul server. Il codice generico da usare quando nessun altro più specifico si applica.

502

Bad Gateway

Un proxy ha ricevuto una risposta non valida dal server di origine. Di solito l'applicazione è inattiva o sta andando in crash.

503

Service Unavailable

Sovraccarico temporaneo o manutenzione. È il codice giusto per un'interruzione pianificata, insieme a Retry-After.

504

Gateway Timeout

Un proxy ha atteso troppo a lungo la risposta dell'origine. Indica in genere una query lenta o una dipendenza bloccata.

Tutto viene calcolato nel tuo browser. Quello che scrivi non viene inviato a nessun server.

Codici di stato HTTP: a cosa serve

I codici di stato HTTP portano molto più significato di quanto la maggior parte delle API sfrutti davvero. La differenza tra un 301 e un 302 decide se i segnali di ranking vengono trasferiti; quella tra 401 e 403 separa l'autenticazione dall'autorizzazione. Questo riferimento consultabile copre ogni codice standard con le sue implicazioni pratiche.

Codici di stato HTTP: come si usa

  1. Cerca per numero di codice o per parola chiave.
  2. Filtra per classe — 2xx successo, 3xx redirect, 4xx errore del client, 5xx errore del server.
  3. Leggi il significato e la causa tipica.
  4. Controlla la nota SEO sui codici di redirect ed errore che influenzano l'indicizzazione.

Domande frequenti

Che differenza c'è tra un redirect 301 e uno 302?

Il 301 è permanente e trasferisce i segnali di ranking alla nuova URL; il 302 è temporaneo e dice ai motori di ricerca di mantenere indicizzata quella originale. Usare un 302 per uno spostamento definitivo è un errore comune e costoso.

Quando restituisco 404 invece di 410?

Il 404 significa "non trovato", forse temporaneamente. Il 410 indica che la risorsa è stata rimossa in modo deliberato e definitivo, e i motori di ricerca tendono a rimuovere più in fretta una URL 410 dall'indice.

Cos'è un soft 404?

Una pagina che dice "non trovato" all'utente ma restituisce il codice HTTP 200. I motori di ricerca la indicizzano come una pagina reale, sprecando crawl budget. Le single-page application le producono con estrema facilità.

Che differenza c'è tra 401 e 403?

Il 401 significa che non ti sei autenticato, quindi delle credenziali potrebbero aiutare. Il 403 significa che sei autenticato ma non autorizzato, e ritentare con la stessa identità non servirà a nulla.