Vai al contenuto
ToolMug

Codici di stato HTTP

Un elenco completo e consultabile dei codici di stato delle risposte HTTP. Ogni codice ha una breve spiegazione di cosa significa e di dove è definito, così puoi capire in fretta un errore nei log o nel browser.

Funziona nel tuo browser: nulla di ciò che inserisci viene caricato

100

ContinueRFC 9110

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

101

Switching ProtocolsRFC 9110

Il server sta passando al protocollo richiesto dal client, per esempio WebSocket.

103

Early HintsRFC 8297

Intestazioni preliminari, spesso suggerimenti di precaricamento Link, inviate prima della risposta finale.

200

OKRFC 9110

La richiesta è riuscita.

201

CreatedRFC 9110

La richiesta è riuscita ed è stata creata una nuova risorsa, di solito dopo POST o PUT.

202

AcceptedRFC 9110

La richiesta è stata accettata per l’elaborazione, ma l’elaborazione non è terminata.

203

Non-Authoritative InformationRFC 9110

La risposta è stata modificata da un proxy di trasformazione.

204

No ContentRFC 9110

La richiesta è riuscita e non c’è alcun corpo da restituire.

205

Reset ContentRFC 9110

La richiesta è riuscita; il client deve reimpostare la vista del documento, per esempio svuotando un modulo.

206

Partial ContentRFC 9110

Viene restituita solo una parte della risorsa, in risposta a una richiesta Range.

207

Multi-StatusRFC 4918 (WebDAV)

Più codici di stato per più operazioni, in un corpo XML.

208

Already ReportedRFC 5842 (WebDAV)

I membri di un binding sono già stati elencati prima nella risposta.

226

IM UsedRFC 3229

La risposta è il risultato di manipolazioni di istanza, come una codifica delta.

300

Multiple ChoicesRFC 9110

Ci sono più rappresentazioni tra cui scegliere.

301

Moved PermanentlyRFC 9110

La risorsa è stata spostata in modo permanente all’URL indicato in Location. I motori di ricerca trasferiscono il posizionamento al nuovo URL.

302

FoundRFC 9110

La risorsa si trova temporaneamente a un altro URL. I browser possono cambiare POST in GET seguendolo.

303

See OtherRFC 9110

Recupera il risultato da un altro URL con GET, di solito dopo l’invio di un modulo.

304

Not ModifiedRFC 9110

La copia in cache è ancora valida, in risposta a una richiesta condizionale.

307

Temporary RedirectRFC 9110

Reindirizzamento temporaneo che mantiene metodo e corpo della richiesta.

308

Permanent RedirectRFC 9110

Reindirizzamento permanente che mantiene metodo e corpo della richiesta.

400

Bad RequestRFC 9110

Il server non può elaborare la richiesta perché è malformata.

401

UnauthorizedRFC 9110

È richiesta l’autenticazione oppure è fallita. La risposta include WWW-Authenticate.

402

Payment RequiredRFC 9110

Riservato a usi futuri; alcune API lo usano per problemi di fatturazione.

403

ForbiddenRFC 9110

Il server ha capito la richiesta ma la rifiuta. Accedere di nuovo non serve.

404

Not FoundRFC 9110

La risorsa non esiste, oppure il server non vuole ammettere che esista.

405

Method Not AllowedRFC 9110

Il metodo non è supportato per questa risorsa. L’intestazione Allow elenca i metodi validi.

406

Not AcceptableRFC 9110

Nessuna rappresentazione corrisponde alle intestazioni Accept della richiesta.

407

Proxy Authentication RequiredRFC 9110

Il client deve prima autenticarsi presso il proxy.

408

Request TimeoutRFC 9110

Il server è andato in timeout in attesa della richiesta.

409

ConflictRFC 9110

La richiesta è in conflitto con lo stato attuale della risorsa, come un conflitto di modifica.

410

GoneRFC 9110

La risorsa è stata rimossa in modo permanente e non tornerà.

411

Length RequiredRFC 9110

La richiesta richiede un’intestazione Content-Length.

412

Precondition FailedRFC 9110

Una condizione nelle intestazioni della richiesta, come If-Match, non è soddisfatta.

413

Content Too LargeRFC 9110

Il corpo della richiesta è più grande di quanto il server consenta. In passato "Payload Too Large".

414

URI Too LongRFC 9110

L’URL è più lungo di quanto il server elabori.

415

Unsupported Media TypeRFC 9110

Il formato del corpo della richiesta, indicato da Content-Type, non è supportato.

416

Range Not SatisfiableRFC 9110

Il Range richiesto è al di fuori della risorsa.

417

Expectation FailedRFC 9110

L’intestazione di richiesta Expect non può essere soddisfatta.

418

I'm a teapotRFC 2324 (April Fools)

Uno scherzo del pesce d’aprile del Hyper Text Coffee Pot Control Protocol, mantenuto da alcuni server.

421

Misdirected RequestRFC 9110

La richiesta è arrivata a un server che non può rispondere per questo host, per esempio dopo il riuso di una connessione.

422

Unprocessable ContentRFC 9110

La richiesta è ben formata ma il contenuto non è valido, per esempio per una convalida fallita.

423

LockedRFC 4918 (WebDAV)

La risorsa è bloccata.

424

Failed DependencyRFC 4918 (WebDAV)

La richiesta è fallita perché è fallita una richiesta da cui dipendeva.

425

Too EarlyRFC 8470

Il server non elabora una richiesta che potrebbe essere ripetuta (dati anticipati TLS).

426

Upgrade RequiredRFC 9110

Il client deve passare a un altro protocollo indicato nell’intestazione Upgrade.

428

Precondition RequiredRFC 6585

Il server richiede una richiesta condizionale, per evitare aggiornamenti persi.

429

Too Many RequestsRFC 6585

Limite di richieste superato. Retry-After indica quando riprovare.

431

Request Header Fields Too LargeRFC 6585

Le intestazioni sono troppo grandi, spesso a causa di cookie voluminosi.

451

Unavailable For Legal ReasonsRFC 7725

La risorsa è bloccata per motivi legali, come un ordine del tribunale.

499

Client Closed RequestNginx · Non standard

Codice di log di Nginx: il client ha chiuso la connessione prima che il server rispondesse.

500

Internal Server ErrorRFC 9110

Un errore imprevisto sul server.

501

Not ImplementedRFC 9110

Il server non supporta la funzionalità richiesta.

502

Bad GatewayRFC 9110

Un gateway o proxy ha ricevuto una risposta non valida dal server upstream.

503

Service UnavailableRFC 9110

Il server non può gestire temporaneamente la richiesta, per esempio per sovraccarico o manutenzione.

504

Gateway TimeoutRFC 9110

Un gateway o proxy non ha ricevuto in tempo una risposta dall’upstream.

505

HTTP Version Not SupportedRFC 9110

La versione HTTP della richiesta non è supportata.

506

Variant Also NegotiatesRFC 2295

Un errore di configurazione nella negoziazione trasparente del contenuto.

507

Insufficient StorageRFC 4918 (WebDAV)

Il server non può memorizzare ciò che serve per completare la richiesta.

508

Loop DetectedRFC 5842 (WebDAV)

Il server ha rilevato un ciclo infinito durante l’elaborazione della richiesta.

511

Network Authentication RequiredRFC 6585

Devi accedere alla rete, di solito in un captive portal come il Wi-Fi di un hotel.

520

Web Server Returned an Unknown ErrorCloudflare · Non standard

Cloudflare: il server di origine ha restituito una risposta vuota, sconosciuta o inattesa.

521

Web Server Is DownCloudflare · Non standard

Cloudflare: il server di origine ha rifiutato la connessione.

522

Connection Timed OutCloudflare · Non standard

Cloudflare: la connessione TCP al server di origine è scaduta.

524

A Timeout OccurredCloudflare · Non standard

Cloudflare: l’origine ha accettato la connessione ma non ha risposto in tempo.

Come si usa

  1. Scrivi un codice o una parola nella casella di ricerca, ad esempio 502 o redirect.
  2. Oppure filtra per classe (informativi, successo, reindirizzamento, errore del client o errore del server).
  3. Per creare un link a un codice specifico, aggiungi il suo numero all'indirizzo della pagina, ad esempio #404.

Opzioni spiegate

Classi
1xx informativi, 2xx successo, 3xx reindirizzamento, 4xx errori del client (un problema nella richiesta) e 5xx errori del server (un problema sul server).
Non standard
Codici come il 499 di Nginx e i 520–524 di Cloudflare non compaiono in nessuna RFC, ma si vedono spesso nei log.

Scegliere un codice di reindirizzamento

I cinque codici di reindirizzamento della RFC 9110 differiscono per due aspetti: se lo spostamento è permanente e se il client può cambiare il metodo della richiesta quando segue il reindirizzamento.

Codice Significato Permanente Metodo dopo il reindirizzamento
301 Moved Permanently Sì Può passare da POST a GET
302 Found No Può passare da POST a GET
303 See Other No Diventa sempre GET
307 Temporary Redirect No Deve restare lo stesso
308 Permanent Redirect Sì Deve restare lo stesso

Per un normale spostamento di pagina o un reindirizzamento da HTTP a HTTPS, 301 è la scelta abituale. Usa 308 o 307 quando una richiesta POST, per esempio un modulo o una chiamata API, deve raggiungere il nuovo indirizzo senza modifiche. Usa 303 dopo l’invio riuscito di un modulo per portare il browser a una pagina di risultato che richiede con GET.

Domande frequenti

Che differenza c'è tra 301 e 302?

301 è uno spostamento permanente — browser e motori di ricerca passano al nuovo URL. 302 è temporaneo. Usa 308 o 307 se il metodo e il corpo della richiesta non devono cambiare.

Che differenza c'è tra 401 e 403?

401 significa che non sei autenticato — accedi e riprova. 403 significa che sei autenticato o identificato ma non hai il permesso; accedere di nuovo non servirà.

Cosa significa 502 Bad Gateway?

Un proxy o un load balancer non è riuscito a ottenere una risposta valida dall'applicazione che ha dietro, di solito perché l'applicazione si è bloccata, si sta riavviando o non è in ascolto.

Privacy

Questo strumento funziona interamente nel tuo browser. File e testi vengono elaborati sul tuo dispositivo e non vengono mai caricati sui nostri server.

Strumenti correlati