Knowledgebase Semplici istruzioni per lavorare con il servizio Profitserver
Principale Knowledgebase Codici di errore HTTP: elenco completo degli errori del server

Codici di errore HTTP: elenco completo degli errori del server


Nel mondo dello sviluppo web, i codici di errore HTTP svolgono un ruolo fondamentale nell'influenzare l'esperienza utente e la reputazione di un sito web. In questo articolo, prenderemo in considerazione un elenco completo di codici di errore del server, analizzeremo i loro significati e impareremo come interpretare efficacemente i codici di risposta del server per risolvere i problemi e ottimizzare le prestazioni delle app web.

Che cos'è un codice di risposta HTTP

Il codice di risposta HTTP è il linguaggio dei server Web che traduce le richieste del browser in istruzioni comprensibili. È come un poeta che risponde a domande virtuali, dando loro un significato e una direzione. I codici di risposta non sono sempre codici di errore HTTP. Ad esempio, "200 OK" significa che tutto è OK, ma l'errore HTTP "404 Not Found" significa quando la pagina è persa nello spazio virtuale. Ogni codice è un'espressione unica dello stato del server, la cui decodifica ci consente di capire cosa sta succedendo dall'altra parte del mondo virtuale.

Codici 1xx (Informazioni)

I codici di stato 1xx nel protocollo HTTP sono una sorta di primo collegamento nel dialogo tra il server e il client. Invece di fornire una risposta completa a una richiesta, forniscono informazioni sullo stato corrente, rendendo lo scambio di dati più efficiente. Diamo un'occhiata più da vicino:

100 Continua . Codice di risposta HTTP con cui il server dà il via libera all'utente, consentendogli di continuare in sicurezza l'invio di una richiesta di grandi dimensioni.

101 Cambio di protocollo . Il server comunica al client che sta modificando le regole del gioco, ad esempio passando da HTTP al più sicuro HTTPS. In questo caso, l'intestazione "Upgrade" viene utilizzata per il cambio di protocollo.

102 Elaborazione . Questo codice è come un messaggio che indica che il server ha accettato la richiesta, ma è ancora occupato con un'operazione complessa.

103 Suggerimenti preliminari . Qui il server invia al client diverse intestazioni indicative prima della risposta principale, avvertendo di qualcosa che potrebbe essere rilevante nel prossimo futuro.

Codice 2xx (riuscito)

I codici di errore HTTP nel gruppo 2xx indicano una richiesta riuscita dal server. In pratica, agiscono come una "luce verde" nell'ambito delle comunicazioni web, confermando che tutto sta procedendo secondo i piani ed è stato completato con successo.

200 OK . Questo stato viene utilizzato quando il server elabora una richiesta tramite metodo GET senza problemi e restituisce i dati richiesti in risposta. L'intestazione "Content-Type" riporta il tipo di contenuto nella risposta. Si limita a informare il client che la richiesta è andata a buon fine.

201 Creato . Qui il server annuncia la creazione di una nuova risorsa.

202 Accepted . Il server comunica all'utente che la richiesta è stata accettata, ma che ci vorrà del tempo prima che la risposta venga elaborata.

203 Informazioni non ufficiali . Questo codice fornisce al cliente dati che potrebbero non essere ufficiali, ma che possono essere utilizzati a scopo di confronto.

204 Nessun contenuto . Il server ha elaborato la richiesta ma non restituisce alcun contenuto aggiuntivo.

205 Reimposta contenuto . Qui il client viene istruito a reimpostare la visualizzazione o i dati correnti dopo l'invio.

206 Contenuto parziale . Questo caso indica che la risposta contiene solo una parte del contenuto richiesto. L'intestazione "Content-Range" indica l'intervallo di contenuto parziale.

207 Multi-Status. Il server ha completato con successo una richiesta multi-operazione da parte del client e la risposta contiene informazioni sullo stato di ciascuna operazione.

226 IM utilizzato . Questo codice indica che il server ha utilizzato il metodo dei metadati incrementali (IM) e ha risposto passando al client solo le parti della risorsa modificate.

Codici 3xx (Reindirizzamenti)

I codici 3xx nel protocollo HTTP sono come puntatori che guidano l'utente verso una nuova posizione di risorsa. Informano il client che devono essere eseguiti dei passaggi successivi per ottenere il contenuto richiesto o per essere reindirizzati a un'altra risorsa. Immergiamoci nei dettagli di ciascuno di essi:

300 Scelte multiple . Il client riceve un segnale che indica la presenza di diverse posizioni possibili per la risorsa e gli viene offerta una scelta in risposta. Nelle circostanze attuali, l'intestazione "Posizione" può indicare opzioni alternative per la risorsa.

301 Spostato definitivamente. Il server comunica all'utente che la risorsa è stata spostata in modo permanente in un'altra posizione.

302 Found . Questo codice HTTP è simile a un reindirizzamento temporaneo. Il server informa il consumatore che la risorsa è temporaneamente disponibile a un URL diverso. L'intestazione "Location" punta al nuovo URL per il reindirizzamento temporaneo.

303 Vedi altro . Al client viene comunicato che la risorsa è disponibile a un URL diverso e che deve effettuare una richiesta GET a questo nuovo indirizzo.

304 Not Modified . Questo stato indica al client che la risorsa è rimasta invariata dall'ultima richiesta e non necessita di essere scaricata nuovamente. Quando si effettua una richiesta, l'intestazione "If-Modified-Since" viene utilizzata per verificare se la risorsa è stata modificata.

305 Usa proxy. In risposta, il server segnala che dovrebbe utilizzare il proxy specificato per accedere alla risorsa richiesta.

306 (riservato) — Il codice è stato riservato, ma di fatto non viene utilizzato.

307 Reindirizzamento temporaneo . Questo codice è simile al 302 Found, ma richiede che il client rimanga nel metodo di richiesta utilizzato nella richiesta originale.

308 Reindirizzamento permanente . Indica che la risorsa è stata spostata in modo permanente a un nuovo URI e che il client dovrebbe utilizzare il nuovo URI per tutte le richieste future.

Errore HTTP 4xx (errori del client)

I codici di errore HTTP 4xx indicano errori del client. Ciò significa che il problema è sul lato utente, come il browser web o l'app.

400 Bad Request . Il server non può elaborare la richiesta a causa di errori di sintassi, dati non validi o altri errori lato client.

401 Non autorizzato. Il server non può elaborare la richiesta a causa di errori di sintassi, dati non validi o altri errori lato client.

402 Pagamento richiesto . Il codice non è attivo al momento ed è riservato per utilizzi futuri. Potrebbe indicare la necessità di pagare prima di poter accedere alla risorsa in futuro.

Errore HTTP 403 Forbidden. Il client non dispone di diritti sufficienti per accedere alla risorsa richiesta.

404 Non trovato. La risorsa richiesta non esiste sul server. Questo è uno degli errori più comuni commessi dagli utenti.

405 Metodo non consentito . Il server non supporta il metodo di richiesta specificato per questa risorsa. L'intestazione "Allow" indica i metodi consentiti per la risorsa. Con questo codice,

406 Non accettabile. Il server non può fornire i dati in un formato accettato dal client.

407 Autenticazione proxy richiesta . Per accedere alla risorsa richiesta è necessaria l'autenticazione sul server proxy.

408 Timeout della richiesta . Il server era in attesa di ricevere una richiesta dal client, ma si è verificato un timeout. L'intestazione "Retry-After" può indicare il tempo dopo il quale è possibile ritentare la richiesta.

409 Conflitto. La richiesta non può essere completata a causa di un conflitto con lo stato attuale della risorsa.

410 Risorsa non più disponibile . La risorsa richiesta esisteva in precedenza ma è stata eliminata e non è previsto il suo ripristino.

411 Lunghezza richiesta . Il server richiede di specificare la lunghezza del contenuto nella richiesta; l'assenza di questa informazione è considerata un errore.

412 Precondizione non soddisfatta . Una precondizione nella richiesta non è soddisfatta, il che impedisce l'esecuzione.

413 Payload troppo grande . La dimensione dei dati della richiesta supera i limiti del server.

414 URI troppo lungo . La lunghezza dell'URI nella richiesta supera i limiti accettabili.

415 Tipo di media non supportato . Il server non può elaborare il tipo di dati fornito nella richiesta.

416 Range Not Satisfiable . Errore HTTP in cui l'intervallo richiesto non corrisponde ai dati attualmente presenti sul server.

417 Errore di previsione . La condizione prevista nell'intestazione "Expect" non è stata soddisfatta.

418 Sono una teiera . Questo codice è incluso per scherzo e non implica alcuna azione reale per l'utente o il server, né costituisce un vero e proprio errore. Indica che il server è una teiera e non è in grado di preparare il caffè.

421 Richiesta non indirizzata correttamente . Il server non elabora la richiesta a causa di un errore nella richiesta stessa o nella configurazione del server.

422 Entità non elaborabile . Il server comprende la richiesta, ma non la elabora a causa di errori nei dati.

423 Bloccato. La risorsa è bloccata e non può essere elaborata.

424 Dipendenza non riuscita . La richiesta dipende da un'altra richiesta non ancora eseguita.

425 Troppo presto. Il server non è pronto a elaborare la richiesta perché è arrivata in anticipo.

426 Aggiornamento richiesto . Il server richiede l'utilizzo di un protocollo più avanzato per elaborare la richiesta.

428 Precondizione richiesta . Il server richiede che nella richiesta siano specificate determinate precondizioni.

429 Troppe richieste . Il client ha inviato troppe richieste in un breve lasso di tempo, superando i limiti del server.

431 Campi dell'intestazione della richiesta troppo grandi . Le intestazioni della richiesta superano la dimensione massima consentita.

449 Riprova con. Indica che la richiesta non può essere eseguita dal server corrente, ma può essere elaborata correttamente da un altro server e il client dovrebbe riprovare la richiesta con un nuovo URI.

451 Non disponibile per motivi legali . La risorsa non è disponibile per motivi legali.

499 Richiesta chiusa dal client . Il server ha ricevuto la richiesta, ma la connessione è stata chiusa dal client prima del completamento dell'elaborazione.

Errore HTTP 5xx (errori del server)

I codici di errore HTTP 5xx indicano i problemi del server. Questi codici indicano problemi che si sono verificati sul lato server, rendendo il server incapace di elaborare la richiesta dell'utente nel modo corretto. Diamo un'occhiata più da vicino:

Errore HTTP 500 Errore interno del server . Il server ha riscontrato circostanze impreviste che gli impediscono di completare la richiesta. L'intestazione "Server" può indicare il server su cui si è verificato l'errore.

501 Not Implemented . Il server non supporta le funzionalità necessarie per elaborare la richiesta del client. L'intestazione "Via" potrebbe indicare il server proxy attraverso il quale si è verificato l'errore.

502 Bad Gateway . Questo codice indica che il server che funge da proxy ha ricevuto una risposta errata da un altro server.

Errore HTTP 503 Servizio non disponibile . Il server non è temporaneamente in grado di elaborare le richieste.

504 Gateway Timeout . Il server che funge da proxy non ha ricevuto una risposta tempestiva da un altro server.

505 Versione HTTP non supportata . Il server non supporta la versione del protocollo HTTP specificata nella richiesta. In alternativa, l'intestazione "Upgrade" potrebbe indicare i protocolli supportati.

506 Variant Also Negotiates . Questo stato non viene utilizzato in HTTP/1.1; tuttavia, se il server rileva una configurazione interna che causa ambiguità nella negoziazione del contenuto, può utilizzare questa risposta.

507 Spazio di archiviazione insufficiente . Il server non può soddisfare la richiesta a causa di spazio di archiviazione insufficiente.

508 Loop Detected . Il server ha rilevato un ciclo durante l'elaborazione della richiesta e si rifiuta di completarla per evitare un ciclo infinito.

509 Limite di larghezza di banda superato . L'errore si verifica quando la larghezza di banda del server viene superata a causa di un elevato volume di richieste o traffico.

510 Non esteso . Il client deve trasferire estensioni aggiuntive per poter proseguire con la richiesta.

511 Autenticazione di rete richiesta . Il client deve autenticarsi per poter accedere alla rete.

Come controllare il codice di stato della pagina

In questa sezione, prenderemo in considerazione tre modi principali per controllare il codice di stato della pagina: tramite la riga di comando, utilizzando un browser Web e utilizzando servizi online indipendenti. Ognuno di questi metodi ha i suoi vantaggi e può essere utile in diverse situazioni.

Controllo della risposta del server tramite riga di comando

La riga di comando fornisce un modo comodo per controllare il codice di stato della pagina senza dover usare un browser web. Per questo metodo, devi aprire la riga di comando e usare il comando:

curl -I http://page-address

Questo comando invia una richiesta HEAD (richiesta solo di intestazioni) all'URL specificato e visualizza informazioni tra cui il codice di stato HTTP:

Controllo del codice di risposta HTTP del server Curl

L'esempio sopra mostra un codice di risposta riuscito. Nel caso di una risposta che contiene un codice di errore, come l'errore HTTP 404 Not Found, il risultato sarà simile:

Errore HTTP 404 Codice di errore non trovato

Controllo della risposta del server tramite la console del browser

La console per sviluppatori del browser Web fornisce strumenti per condurre varie operazioni, tra cui il controllo del codice di stato della pagina. Per vedere il codice HTTP nella risposta del server, è necessario aprire la console per sviluppatori (Ctrl+Shift+K) o (Ctrl+Shift+J) a seconda del browser utilizzato. Quindi, selezionare la sezione "rete" e caricare la pagina desiderata:

Diagnosi del codice di risposta HTTP del server del browser

Controllo della risposta del server tramite strumenti indipendenti

Esistono numerosi servizi online indipendenti che offrono strumenti per verificare lo stato di una pagina web. Questi servizi consentono generalmente di ottenere rapidamente una panoramica della disponibilità e delle prestazioni di una risorsa. Tutti funzionano secondo lo stesso principio. Ad esempio, prenderemo in considerazione la risorsa più popolare: httpstatus.io

Per prima cosa, devi aprire il servizio stesso, quindi inserire l'indirizzo della pagina la cui risposta devi scoprire e richiedere la verifica:

Codice di risposta del server HTTP per servizi indipendenti

Il risultato verrà visualizzato in fondo alla pagina:

Codice di risposta del server HTTP riuscito

Conclusione

In conclusione, va sottolineato che comprendere ed essere in grado di leggere i codici di errore HTTP è un'abilità fondamentale per chiunque sia coinvolto nello sviluppo web e nella manutenzione del server. Mentre scopriamo ogni errore ed esploriamo gli strumenti per rilevarli, vediamo i motivi per cui è così importante gestire efficacemente questi aspetti dei servizi web.

❮ Articolo precedente Come controllare il server di posta
Articolo successivo ❯ Come aggiungere un indirizzo IP aggiuntivo al server Windows

Chiedici informazioni su VPS

Siamo sempre pronti a rispondere alle vostre domande a qualsiasi ora del giorno e della notte.