Codici Stato HTTP - Ricerca Codice Stato HTTP
- Strumenti Correlati:
- Interrogazione IP
- Visualizzatore Intestazioni HTTP
- Documentazione:
- Riferimento Intestazioni HTTP
| Categoria | Descrizione |
|---|---|
| 1xx |
I codici di stato 1xx indicano che la richiesta è stata ricevuta e deve continuare l'elaborazione. Tali risposte sono provvisorie e includono solo la riga di stato e alcune intestazioni di risposta facoltative, e terminano con una riga vuota. La specifica del protocollo HTTP/1.0 non definisce alcun codice di stato 1xx, quindi a meno che non si verifichino determinate condizioni sperimentali, i server non devono inviare risposte 1xx a tali client. Questi codici di stato rappresentano risposte informative, indicando altre azioni che il client deve intraprendere. |
| 2xx |
I codici di stato 2xx indicano che la richiesta è stata ricevuta, compresa e accettata con successo dal server. |
| 3xx |
I codici di stato 3xx indicano che il client deve intraprendere ulteriori azioni per completare la richiesta. Di solito, questi codici di stato vengono utilizzati per il reindirizzamento, con l'indirizzo della richiesta successiva (target del reindirizzamento) specificato nel campo Location di questa risposta. Solo quando la richiesta successiva utilizza il metodo GET o HEAD il browser dell'utente può inviare automaticamente la richiesta successiva necessaria senza intervento dell'utente. Secondo le raccomandazioni della specifica del protocollo HTTP/1.0, i browser non dovrebbero accedere automaticamente a più di 5 reindirizzamenti. |
| 4xx |
I codici di stato 4xx indicano che il client sembra aver commesso un errore, impedendo al server di elaborare. |
| 5xx |
I codici di stato 5xx indicano che il server ha riscontrato un errore o uno stato anomalo durante l'elaborazione della richiesta, o che il server si rende conto che con le risorse hardware e software attuali non può completare l'elaborazione della richiesta. |
Codici Stato HTTP Comuni
| Codice Stato | Descrizione |
|---|---|
| 100 Continue | Il server ha ricevuto le intestazioni della richiesta e il client deve continuare a inviare il corpo della richiesta (nel caso di una richiesta per la quale è necessario inviare un corpo: ad esempio, una richiesta POST), oppure ignorare questa risposta se la richiesta è già stata completata. Il server deve inviare una risposta finale al client dopo che la richiesta è stata completata. |
| 101 Switching Protocols | Il server ha compreso la richiesta del client e notificherà il client tramite l'intestazione del messaggio Upgrade per adottare un protocollo diverso per completare questa richiesta. Dopo aver inviato l'ultima riga vuota di questa risposta, il server passerà ai protocolli definiti nell'intestazione del messaggio Upgrade. |
| 200 OK | Richiesta completata con successo Le intestazioni di risposta o il corpo dei dati attesi dalla richiesta verranno restituiti con questa risposta. |
| 201 Created | La richiesta è stata soddisfatta e una nuova risorsa è stata creata in base alla necessità della richiesta, e il suo URI è stato restituito con le informazioni dell'intestazione Location. Se la risorsa richiesta non può essere creata in tempo, dovrebbe essere restituito '202 Accepted'. |
| 202 Accepted | Il server ha accettato la richiesta, ma non l'ha ancora elaborata. Proprio come potrebbe essere respinta, questa richiesta potrebbe o non potrebbe essere definitivamente eseguita. Non c'è approccio più conveniente che inviare questo codice di stato nel caso di operazioni asincrone. |
| 204 No Content | Il server ha elaborato con successo la richiesta, ma non ha bisogno di restituire alcun contenuto dell'entità, e spera di restituire meta informazioni aggiornate. La risposta può restituire meta informazioni nuove o aggiornate sotto forma di intestazioni di entità. |
| 206 Partial Content | Il server ha elaborato con successo parte della richiesta GET Simile agli strumenti di download HTTP come FlashGet o Thunder, tutti usano questo tipo di risposta per implementare download riprendibili o dividere un documento di grandi dimensioni in più segmenti per il download simultaneo. Questa richiesta deve includere informazioni sull'intestazione Range per indicare l'intervallo di contenuto che il client desidera ottenere e può includere If-Range come condizione della richiesta. La risposta deve includere i seguenti campi di intestazione:
Se questa richiesta di risposta utilizza la convalida della cache forte If-Range, questa risposta non deve contenere altre intestazioni di entità; se questa richiesta di risposta utilizza la convalida della cache debole If-Range, questa risposta è vietata dal contenere altre intestazioni di entità; questo evita l'incoerenza tra contenuto dell'entità memorizzato nella cache e informazioni sull'intestazione dell'entità aggiornate. Altrimenti, questa risposta dovrebbe contenere tutti i campi di intestazione dell'entità che dovrebbero essere restituiti in una risposta 200. Se le intestazioni ETag o Last-Modified non possono essere esattamente abbinate, la cache del client dovrebbe proibire di combinare il contenuto restituito dalla risposta 206 con qualsiasi contenuto precedentemente memorizzato nella cache. Qualsiasi cache che non supporta le intestazioni Range e Content-Range è vietata dal memorizzare nella cache il contenuto restituito dalla risposta 206. |
| 301 Moved Permanently | La risorsa richiesta è stata spostata in modo permanente in una nuova posizione e qualsiasi riferimento futuro a questa risorsa deve utilizzare uno dei vari URI restituiti da questa risposta. Se possibile, i client con funzionalità di modifica dei link dovrebbero modificare automaticamente l'indirizzo della richiesta all'indirizzo fornito dal server. Salvo diversa indicazione, questa risposta è anche memorizzabile nella cache. Il nuovo URI permanente dovrebbe essere restituito nel campo Location della risposta. A meno che non si tratti di una richiesta HEAD, l'entità della risposta dovrebbe contenere un collegamento ipertestuale al nuovo URI e una breve descrizione. Se questa non è una richiesta GET o HEAD, i browser sono quindi vietati dal reindirizzare automaticamente a meno che non venga ottenuta la conferma dell'utente, poiché le condizioni della richiesta potrebbero cambiare di conseguenza. Nota: per alcuni browser che utilizzano il protocollo HTTP/1.0, quando inviano una richiesta POST e ottengono una risposta 301, la successiva richiesta di reindirizzamento diventerà un metodo GET. |
| 302 Found | La risorsa richiesta risponde ora temporaneamente alle richieste da un URI diverso. Poiché tali reindirizzamenti sono temporanei, i client devono continuare a inviare richieste future all'indirizzo originale. Questa risposta è memorizzabile nella cache solo se specificato in Cache-Control o Expires. Il nuovo URI temporaneo dovrebbe essere restituito nel campo Location della risposta. A meno che non si tratti di una richiesta HEAD, l'entità della risposta dovrebbe contenere un collegamento ipertestuale al nuovo URI e una breve descrizione. Se questa non è una richiesta GET o HEAD, i browser sono vietati dal reindirizzare automaticamente a meno che non venga ottenuta la conferma dell'utente, poiché le condizioni della richiesta potrebbero cambiare di conseguenza. |
| 303 See Other | La risposta alla richiesta corrente può essere trovata in un altro URI e il client deve accedere a quella risorsa utilizzando il metodo GET. L'esistenza di questo metodo è principalmente per consentire l'output della richiesta POST attivato dagli script di reindirizzare a una nuova risorsa. Questo nuovo URI non è un riferimento sostitutivo per la risorsa originale. |
| 307 Temporary Redirect | La risorsa richiesta risponde ora temporaneamente alle richieste da un URI diverso. Simile al 302, ma il codice di stato 307 non consente ai browser di reindirizzare una richiesta originariamente POST a una richiesta GET. |
| 308 Permanent Redirect | La risorsa richiesta è stata spostata in modo permanente in una nuova posizione. Simile al 301, ma il codice di stato 308 non consente ai browser di reindirizzare una richiesta originariamente POST a una richiesta GET. |
| 304 Not Modified | Se il client ha inviato una richiesta GET condizionale e la richiesta è stata consentita, ma il contenuto del documento (dall'ultimo accesso o in base alle condizioni della richiesta) non è cambiato, il server deve restituire questo codice di stato. Le risposte 304 sono vietate dal contenere un corpo del messaggio, quindi terminano sempre con la prima riga vuota dopo l'intestazione del messaggio. La risposta deve contenere una delle seguenti informazioni di intestazione: Date, ETag, Server, Vary a meno che queste informazioni di intestazione non siano già state impostate nella cache. |
| 400 Bad Request | A causa di evidenti errori del client (come sintassi della richiesta errata, dimensioni troppo grandi, messaggio di richiesta non valido o richieste di instradamento ingannevoli), il server non può o non vuole elaborare la richiesta. Il client non dovrebbe inviare nuovamente questa richiesta senza modifiche. |
| 401 Unauthorized | Vedi RFC 7235. Simile a 403 Forbidden, 401 semanticamente significa "non autenticato", cioè, l'utente non ha le credenziali necessarie. Questo codice di stato indica che la richiesta corrente richiede l'autenticazione dell'utente. La risposta deve contenere un'intestazione di informazione WWW-Authenticate applicabile alla risorsa richiesta per interrogare le informazioni dell'utente. Il client può inviare nuovamente una richiesta contenente informazioni di intestazione Authorization appropriate. Se la richiesta corrente contiene già credenziali Authorization, allora una risposta 401 rappresenta che l'autenticazione del server ha rifiutato quelle credenziali. |
| 403 Forbidden | Il server ha compreso la richiesta ma rifiuta di eseguirla. A differenza della risposta 401, l'autenticazione non può fornire alcun aiuto e questa richiesta non dovrebbe essere inviata nuovamente. Se questa non è una richiesta HEAD e il server desidera essere in grado di spiegare perché la richiesta non può essere eseguita, il motivo del rifiuto dovrebbe essere descritto nell'entità. Naturalmente, il server può anche restituire una risposta 404 se non vuole che il client ottenga alcuna informazione. |
| 404 Not Found | Richiesta fallita, la risorsa che la richiesta sperava di ottenere non è stata trovata sul server. Nessuna informazione può dire all'utente se questa situazione è temporanea o permanente. Se il server conosce la situazione, dovrebbe usare il codice di stato 410 per informare che la vecchia risorsa è permanentemente non disponibile a causa di alcuni problemi di meccanismo di configurazione interna e non c'è un indirizzo a cui saltare. Il codice di stato 404 è ampiamente utilizzato quando il server non vuole rivelare esattamente perché la richiesta è stata rifiutata o non è disponibile altra risposta adeguata. |
| 405 Method Not Allowed | Il metodo di richiesta specificato nella riga di richiesta non può essere utilizzato per la risorsa corrispondente. La risposta deve restituire un'informazione di intestazione Allow per indicare l'elenco dei metodi di richiesta che la risorsa corrente può accettare. Poiché i metodi PUT e DELETE eseguiranno operazioni di scrittura sulle risorse sul server, la maggior parte dei server web non supporta o non consente i metodi di richiesta sopra indicati nella configurazione predefinita e restituirà errori 405 per tali richieste. |
| 408 Request Timeout | Richiesta scaduta. Il client non ha completato l'invio di una richiesta entro il tempo che il server era disposto ad attendere. Il client può inviare nuovamente questa richiesta in qualsiasi momento senza alcuna modifica. |
| 409 Conflict | La richiesta non può essere completata a causa di un conflitto con lo stato corrente della risorsa richiesta. Questo codice è consentito solo in tali situazioni: si ritiene che gli utenti siano in grado di risolvere il conflitto e invieranno nuove richieste. |
| 410 Gone | La risorsa richiesta non è più disponibile sul server e non esiste un indirizzo di inoltro noto. Tale situazione dovrebbe essere considerata permanente. Se possibile, i client con funzionalità di modifica dei link dovrebbero eliminare tutti i riferimenti che puntano a questo indirizzo. |
| 413 Payload Too Large | Il server rifiuta di elaborare la richiesta corrente perché la dimensione dei dati dell'entità inviati dalla richiesta supera l'intervallo che il server è disposto o in grado di elaborare. In questo caso, il server può chiudere la connessione per impedire al client di continuare a inviare questa richiesta. |
| 429 Too Many Requests | L'utente ha inviato troppe richieste in un determinato periodo di tempo. La risposta può contenere un'intestazione Retry-After, che suggerisce quanto tempo l'utente dovrebbe aspettare prima di riprovare. |
| 500 Internal Server Error | Il server ha riscontrato una situazione che non sa come gestire. Il server ha riscontrato una situazione inaspettata che gli ha impedito di completare l'elaborazione della richiesta. In generale, questo problema si verifica quando c'è un errore nel codice del programma del server. |
| 501 Not Implemented | Il server non supporta una certa funzione richiesta dalla richiesta corrente. Quando il server non può riconoscere il metodo di richiesta e non può supportare la sua richiesta per qualsiasi risorsa, questo codice di stato è appropriato. |
| 502 Bad Gateway | Il server che lavora come gateway o proxy ha ricevuto una risposta non valida dal server a monte quando cercava di eseguire la richiesta. Gli errori 502 di solito non possono essere risolti dal client, ma devono essere risolti dal server web o dal server proxy intermedio. |
| 503 Service Unavailable | Il server non è attualmente disponibile (a causa di sovraccarico o tempi di inattività per manutenzione). Di solito, questo è solo uno stato temporaneo. Se il tempo di ritardo può essere previsto, la risposta può includere un'intestazione Retry-After per indicare questo tempo di ritardo. Se questa informazione Retry-After non viene fornita, il client dovrebbe gestirlo nello stesso modo in cui gestisce una risposta 500. |
| 504 Gateway Timeout | Il server che lavora come gateway o proxy non ha ricevuto una risposta in tempo dal server a monte (server identificati da URI, come HTTP, FTP, LDAP) o server ausiliari (come DNS) quando cercava di eseguire la richiesta. Nota: alcuni server proxy restituiscono errori 400 o 500 quando le query DNS scadono. |