Controllo lo status code del server remoto

Controllo lo status code del server remoto

Controlla lo status code del server remoto e gli Header

La risposta dello status code HTTP indica se una specifica richiesta HTTP è stata completata con successo oppure no

Server e proxy

4.7 Condividi

Inserisci l'URL

Includi protocollo (http o https)

Che cosa è lo status code HTTP del server?

Gli status code HTTP sono codici di risposte standard dati dai server dei siti web su internet.

Quando una pagina web o altre risorse non sono caricate correttamente, i codici forniti aiutano ad identificare quali siano le cause del problema Approfondisci

L'HTTP è il protocollo utilizzato per trasferire dati tra un web server ed i browser. Il server risponde al browser fornendo l'header HTTP della risposta.

Gli header delle risposte del server sono le informazioni, in forma di record di testo, che il web server reinvia al browser del client in risposta alla ricezione di una request HTTP.

Gli header di risposta contengono la data, la dimensione ed il tipo di file che il server sta rinviando al client, inoltre la response contiene dati sul server stesso.

Le risposte sono suddivise in cinque classi: codici informativi, codici di successo, codici di reindirizzamento, codici di errore del client, codici di errore del server.

Informazioni delle risposte degli status code HTTP

1xx Informational

100 Continue

Questa risposta provvisoria indica che finora tutto è OK ed il client dovrebbe continuare con la request oppure ignorarla se ha già finito.

La parte iniziale della request è stata ricevuta e non è ancora stata rifiutata dal server. Dunque il server manderà la risposta dopo che avrà ricevuto totalmente la request.

101 Switching Protocol

Questo codice viene inviato in risposta a un HEADER di richiesta di aggiornamento da parte del client, ed indica a quale protocollo il server sta passando.

Il server comprende la richiesta del client e vuole soddisfarla e, tramite il campo¹ Upgrade dell'Header, modifica il protocollo applicativo utilizzato sulla connessione.

102 Processing

Questo codice indica che il server ha ricevuto la request e che la sta processando, ma la response non è ancora disponibile.

Una risposta transitoria di solito informa il client che il server ha accettato la richiesta completa, ma non la ha ancora completata.

2xx Success

200 OK

La richiesta ha avuto esito positivo. Il payload mandato nella 200 response dipende dal metodo usato nella richiesta.

Il valore di SUCCESS varia a seconda del metodo HTTP:

  • GET: La risorsa è stata recuperata ed è trasmessa nel corpo del messaggio.
  • HEAD: Il soggetto degli header è nel corpo del messaggio.
  • POST: La risorsa che descrive il risultato dell'azione viene trasmessa nel corpo del messaggio.
  • TRACE: Il corpo del messaggio contiene il messaggio di richiesta ricevuto dal server.

201 Created

La richiesta ha avuto esito positivo e come risultato è stata creata una nuova risorsa. Solitamente questa è la tipica response mandata dopo una request PUT.

La prima risorsa creata dalla richiesta è identificata nella risposta da un campo header (intestazione) "Location" oppure, se il campo Location non è pervenuto, è identificato dall'URI effettivo della richiesta.

203 Non-authoritative information

La richiesta ha avuto esito positivo ma il payload allegato è stato modificato da un proxy di trasformazione rispetto a quello che era nella risposta 200 - OK del server di origine.

Questo codice di risposta significa che il set delle informazioni meta restituite non è esattamente come nel server di origine, ma è stato riunito da una copia locale o da una copia di terze parti.

204 No Content

Non è presente contenuto da inviare per questa request, ma potrebbero essere utili gli header. Lo user-agent (interprete) può aggiornare gli header memorizzati nella cache per questa risorsa nuovi header.

Il server ha soddisfatto con successo la richiesta e non ci sono contenuti aggiuntivi da inviare nel corpo del payload della risposta.

205 Reset Content

Questo codice di risposta è inviato dopo l'esecuzione della request e dice allo user-agent (interprete) di ripristinare il document view che ha inviato con questa richiesta.

Il server ha soddisfatto pienamente la richiesta ed esige che lo user agent ripristini il "document view" , che ha causato l’invio della richiesta, riportandolo al suo stato originale come ricevuta dal server di origine.

206 Partial Content

Questo codice di risposta viene utilizzato dal "range header" inviato dal server per frazionare un download in molteplici flussi.

Il server ha soddisfatto con successo la richiesta per la risorsa target (di destinazione) e trasferisce una o più parti della rappresentazione selezionata, la quale corrisponde ai range soddisfatti del campo "range header" della richiesta.

207 Multi-Status

Una response multi-status trasmette le informazioni su molteplici risorse in situazioni dove possono essere necessari più codici di stato.

Il corpo del testo predefinito della risposta Multi-Status è un entità HTTP text/xml o application/xml con un elemento principale 'multistatus'. Ulteriori elementi contengono serie di status code 200, 300, 400 e 500 generati durante l'invocazione del metodo.

208 Already Reported

È Usato all'interno dell'elemento di response per evitare di enumerare più volte gli elementi interni di più legami (binding) alla stessa collezione.

Per ogni legame alla raccolta dentro allo scope (l'ambito) della request solo uno sarà dichiarata con uno status 200, mentre i successivi elementi degli altri legami useranno lo status 208, non viene incluso nessuno degli elementi per i loro discendenti.

226 IM Used

Il server ha soddisfatto la richiesta GET per la risorsa e la response è la rappresentazione del risultato di una o più manipolazioni delle istanze applicate all'istanza corrente.

L'attuale istanza corrente potrebbe non essere disponibile se non combinando questa risposta con altre risposte precedenti o future, come appropriato per la specifica manipolazione/i dell'istanza.

3xx Reindirizzamento

300 Multiple Choices

La request ha più di una response possibile. Lo user-agent (interprete) o l'utente dovrebbero sceglierne una. Non esiste un modo standard di scegliere una delle risposte.

La risorsa target (di destinazione) ha più di una rappresentazione, ognuna con il proprio identificatore più specifico, le informazioni sulle alternative sono fornite in modo che l'utente (o lo user-agent (interprete)) possa selezionare una rappresentazione preferita reindirizzando la sua richiesta ad uno o più di questi identificatori.

301 Moved Permanently

Questo codice di risposta indica che l'URI della risorsa richiesta è stato cambiato. Probabilmente potrebbe essere dato un nuovo URI nella risposta.

Alla risorsa target (di destinazione) è stato assegnato permanentemente un nuovo URI e qualsiasi riferimento futuro alla risorsa dovrebbe utilizzare uno degli URI allegati.

302 Found

Questo codice di risposta indica che l'URI della risorsa richiesta è stato cambiato temporaneamente. Nuovi cambiamenti all’URI potrebbero essere fatti in futuro. Di conseguenza il client dovrebbe usare lo stesso URI per richieste future.

La risorsa target (di destinazione) risiede temporaneamente sotto un URI diverso. Visto che occasionalmente il reindirizzamento potrebbe essere modificato, il client, per future richieste, dovrebbe continuare ad utilizzare l'effettivo URI della request.

303 See other

Il server invia questa risposta per indirizzare il client a prendere la risorsa richiesta ad un altro URI con una request GET.

Il server sta indirizzando lo user agent verso una risorsa diversa, come indicate dall'URI nel campo LOCATION dell'header, con lo scopo di fornire una risposta indiretta alla richiesta originale.

304 Not modified

Viene usato per la memorizzazione della cache. Dice al client che la risposta non è stata modificata. Così che il client possa continuare ad usare la stessa versione di risposta memorizzata nella cache.

Una richiesta GET o HEAD conditional è stata ricevuta e sarebbe risultata in una risposta 200 - OK se non fosse che la condizione analizzata sia risultata falsa.

305 Use Proxy

Era definito in una versione precedente delle specifiche HTTP ed indicava che la risposta richiesta doveva essere accessibile da un proxy. È stato deprecato in seguito a problemi di sicurezza che riguardano una non corretta configurazione del proxy.

307 Temporary redirect

Il server invia questa risposta per indirizzare il client a prendere la risorsa richiesta ad un altro URI con lo stesso metodo usato dalla richiesta precedente. Ha la stessa semantica del response code HTTP 302-Found, con la differenza che lo user-agent (interprete) non deve cambiare il metodo HTTP utilizzato: se nella prima richiesta è stato usato un metodo POST, un metodo POST dev'essere usato nella seconda richiesta.

La risorsa target (di destinazione) risiede temporaneamente sotto un URI differente e lo user-agent (interprete) NON DEVE cambiare il metodo usato nella request se esegue un reindirizzamento automatico a quell'URI

308 Permanent redirect

Indica che la risorsa è permanentemente posizionata in un altro URI, specificato nell'header Location: della response HTTP. Ha la stessa semantica del response code HTTP 301 Moved Permanently, con la differenza che lo user-agent (interprete) non deve cambiare il metodo HTTP utilizzato: se nella prima richiesta è stato usato un metodo POST, un metodo POST dev'essere usato nella seconda richiesta.

Alla risorsa target (di destinazione) è stato assegnato permanentemente un nuovo URI e qualsiasi riferimento futuro a questa risorsa dovrebbe utilizzare uno degli URI allegati.

4xx ErrorI del client

400 Bad Request

Questa risposta indica che il server, a causa di una sintassi sbagliata, non riesce a comprendere la request.

Il server non può o non intende processare la request a causa di un elemento percepito come errore del client (ad esempio: sintassi della richiesta sbagliata, request message framing non valido, o routing fuorviante delle request).

401 Unauthorized

La richiesta non è stata applicata perché mancano credenziali di autenticazione valide per la risorsa target.

Anche se la specifica HTTP standard è "unauthorized", semanticamente questa risposta è "unauthenticated". Ovvero, il client deve autenticarsi per ottenere la risposta richiesta.

402 Payment Required

Questo response code è destinato ad usi futuri. L’idea iniziale nella creazione di questo status code era di utilizzarlo nei sistemi di pagamento digitali, tuttavia, attualmente non è usato.

È Destinato ad uso futuro.

403 Forbidden

Il server interpreta la richiesta ma si rifiuta di autorizzarla.

Il client non ha i diritti di accesso al contenuto, ovvero non è autorizzato, di conseguenza il server si rifiuta di dare una regolare response. A differenza del 401, l'identità del client è nota al server.

404 Not Found

Il server non riesce a trovare la risorsa richiesta. Nel browser, indica che l'URL non viene riconosciuto. In un'API, può anche significare che l'endpoint è valido, ma la risorsa stessa non esiste.

I server, per nascondere l'esistenza di una risorsa ad una client non autorizzato, potrebbero mandare questa risposta invece della 403. Questo response code è probabilmente il più famoso dato che si verifica continuamente sul web.

405 Method Not Allowed

Il metodo ricevuto nella request-line è conosciuto dal server di origine ma non è supportato dalla risorsa target (di destinazione).

Il metodo della richiesta è noto al server ma è stato disabilitato e non può essere usato. Per esempio: un API potrebbe vietare il DELETE (la cancellazione) di una risorsa. I due metodi obbligatori, GET ed HEAD, non devono mai essere disabilitati e non devono mai restituire questo error code.

406 Not Acceptable

Questa risposta è inviata quando il web server, dopo aver eseguito la negoziazione dei contenuti server-driven (guidati dal server), non trova alcun contenuto che risponda ai criteri forniti dallo user agent (l’interprete).

La risorsa target (di destinazione) non ha una rappresentazione appropriata per lo user-agent (interprete), in base ai campi dell'header della proactive negotiation ricevuti nella request e, di conseguenza, il server non è disposto a fornire una rappresentazione appropriata.

407 Proxy Authentication Required

Simile al 401 Unauthorized, ma indica che il client deve autenticarsi per poter utilizzare un proxy

408 Request Timeout

Questa risposta è inviata a causa di una connessione lenta verso alcuni server, anche se non c'è nessuna precedente request del client (si verifica principalmente quando la richiesta di una pagina Web richiede più tempo di quanto dovrebbe essere necessario).

Indica che il server desidera chiudere questa connessione inutilizzata.

Questa risposta è usata molto di più da quando i browser come Chrome, Firefox 27+ o IE9 usano i meccanismi HTTP pre-connection per accellerare la navigazione. È da notare come alcuni server chiudono semplicemente la connessione senza inviare questo messaggio.

409 Conflict

È Impossibile completare la richiesta a causa di un conflitto con lo stato corrente della risorsa target (di destinazione). Questo codice è usato in situazioni in cui l'utente potrebbe essere in grado di risolvere il conflitto e inviare nuovamente la richiesta.

Questa risposta è inviata quando la richiesta entra in conflitto con lo stato corrente del server.

410 Gone

Questa risposta potrebbe essere inviata quando il contenuto richiesto è stato permanentemente eliminato dal server, senza il trasferimento dell'indirizzo. I client sono tenuti a rimuovere le loro cache e i link alla risorsa.

La specifica HTTP prevede che questo status code sia usato per "limited-time, promotional services" ("servizi promozionali a tempo limitato"). Le API non dovrebbero sentirsi obbligate ad indicare le risorse che sono state eliminate con questo codice di stato.

411 Length Required

Il server si rifiuta di accettare le richieste senza una Content-Length (lunghezza del contenuto) definita.

Il server rifiuta la richiesta perché il campo Content-Length dell'header non è definito nonostante ii server lo richieda.

412 Precondition Failed

Il client ha indicato precondizioni nei suoi Header che il server non soddisfa.

Una o più condizioni date nel campo header della richiesta sono valutate come false quando vengono testate sul server.

413 Payload Too Large

Il server si rifiuta di elaborare la richiesta perché il payload della richiesta è più grande di quello che il server è disposto o è in grado di processare.

Il soggetto della request è più grande dei limiti impostati dal server, il server potrebbe chiudere la connessione o restituire il campo dell'header Retry-After (Riprova-dopo).

414 Request-URI Too Long

L'URI richiesto dal client è più lungo di quanto il server sia disposto ad interpretare.

Il server si rifiuta di eseguire la richiesta perché la richiesta target (di destinazione) è più lunga rispetto a quello che il server è disposto ad interpretare.

415 Unsupported Media Type

Il server di origine si rifiuta di eseguire la richiesta perché il payload è in un formato non supportato dal metodo sulla risorsa target (di destinazione).

Il formato multimediale dei dati richiesti non è supportato dal server, quindi il server rifiuta la richiesta.

416 Requested Range Not Satisfiable

Il range specificato nel campo dell'header Range nella richiesta non può essere soddisfatto; è possibile che il range sia al di fuori della dimensione dei data dell'URI target (solitamente la causa è il campo Range dell’header mancante o contenente errori).

Nessuno dei range della request nel campo¹ Range dell'header sovrascrive l'estensione corrente della risorsa selezionata o nessuna della raccolta di range richiesti è stata rifiutata a causa di range non validi o di una richiesta eccessiva di range piccoli o sovrascritti.

417 Expectation Failed

La previsione indicata nel campo Expect dell'header della request non può essere soddisfatta da almeno uno dei server in entrata.

Questo codice di risposta indica che l'aspettativa indicata dalla richiesta nel campo Expect dell'header non può essere soddisfatta dal server.

418 I'm a teapot

Il server rifiuta il tentativo di preparare un caffè al client perchè… È una teiera.

Qualsiasi tentativo di preparare il caffè con una teiera dovrebbe risultare nel codice errore "418 Sono una teiera". Il corpo dell'entità risultante POTREBBE essere corto e robusto.

421 Misdirected Request

La request è stata indirizzata ad un server che non è in grado di produrre una risposta. Potrebbe essere inviata da un server che non è configurato nel generare risposte che combinino scheme (ciò che fornisce informazioni sul protocollo utilizzato) e authority (ciò che identifica il dominio) inclusi nell'URI della richiesta.

422 Unprocessable Entity

La richiesta è strutturata correttamente ma a causa di errori semantici non può essere eseguita.

Il server comprende il tipo di contenuto dell'entità richiesta (e di conseguenza lo status code 415 - Unsupported Media Type è inappropriato), ed anche la sintassi dell'entità richiesta è corretta (di conseguenza il codice di stato 400 - Bad request è inappropriato) ma non è in grado di elaborare le istruzioni contenute.

423 Locked

La risorsa di origine o di destinazione di un metodo è bloccata.

424 Failed Dependency

La richiesta non è riuscita a causa del fallimento di una precedente request.

Non è possibile eseguire il metodo sulla risorsa perché l'azione richiesta dipendeva da un'altra azione e tale azione non è riuscita.

426 Upgrade Required

Il server si rifiuta di eseguire la richiesta utilizzando il protocollo corrente, ma potrebbe essere disposto ad eseguirla dopo che il client esegue l'aggiornamento ad un protocollo diverso.

428 Precondition Required

Il server di origine richiede che la richiesta sia condizionale. Intende prevenire il problema 'lost update', in cui un client ottiene (GET) lo stato di una risorsa, lo modifica e lo torna (PUT) al server, mentre nel frattempo una terza parte ha modificato lo stato sul server, causandone un conflitto.

429 Too Many Requests

L'utente ha inviato troppe richieste in un dato lasso di tempo ("rate limiting").

431 Request Header Fields Too Large

Il server non è disposto a elaborare la richiesta perché i campi Header sono troppo grandi. La richiesta PUÒ essere ripresentata dopo aver ridotto la dimensione dei campi header.

444 Connection Closed Without Response

È uno status code non-standard utilizzato per dare istruzioni a Nginx di chiudere la connessione senza inviare una risposta al client, comunemente è usato per negare richieste dannose o in un formato non corretto.

451 Unavailable For Legal Reasons

L'utente richiede una risorsa illegale, ad esempio una pagina web censurata da un governo.

Il server sta negando l'accesso ad una risorsa a causa di motivi legali.

499 Client Closed Request

È uno status code non-standard restituito da Nginx nel in caso in cui il client chiuda la connessione mentre Nginx sta ancora elaborando la richiesta.

5xx Server Error

500 Internal Server Error

Il server ha riscontrato una situazione che non sa come gestire.

Il server ha riscontrato una condizione inaspettata che gli impedisce di soddisfare la richiesta.

501 Not Implemented

Il server non supporta le funzionalità necessarie per soddisfare la richiesta.

Il metodo della richiesta non è supportato dal server e non può essere gestito. Gli unici metodi che i server sono tenuti a supportare (e quindi non devono restituire questo codice) sono GET e HEAD.

502 Bad Gateway

Questo error response significa che il server, mentre lavorava come gateway per ottenere la risposta necessaria a gestire la richiesta, ha ricevuto una risposta non valida.

Il server, mentre agiva come gateway o proxy, ha ricevuto una risposta non valida da un server in entrata a cui ha avuto accesso mentre tentava di soddisfare la richiesta.

503 Service Unavailable

Il server attualmente non è in grado di gestire la richiesta a causa di un sovraccarico temporaneo o a causa di una manutenzione programmata, ma probabilmente il problema verrà risolta dopo un certo lasso di tempo.

Il server non è pronto a gestire la richiesta. Le cause più comuni sono un server inattivo per manutenzione o sovraccarico.

504 Gateway Timeout

Questa risposta di errore è data quando il server agisce come gateway e non è in grado ad avere una risposta in tempo.

Il server, pur agendo come gateway o proxy, non ha ricevuto una risposta tempestiva dal server originale a cui ha avuto accesso per completare la richiesta.

505 HTTP Version Not Supported

Il server non supporta, o si rifiuta di supportare, la versione principale HTTP utilizzata nel messaggio di richiesta.

La versione HTTP utilizzata nella richiesta non è supportata dal server.

506 Variant Also Negotiates

Il server presenta un errore di configurazione interno: la transparent content negotiation per la request dà luogo ad un loop chiuso.

Pertanto non è un end point adeguato nel processo di negoziazione.

507 Insufficient Storage

Il metodo non può essere eseguito sulla risorsa perchè il server non è in grado di memorizzare la rappresentazione necessaria per completare la richiesta. Il server non è in grado di completare la richiesta per problemi di memorizzazione (storage).

Il server ha un errore di configurazione interno: l’opzione scelta della risorsa è configurata per impegnarsi in una transparent content negotiation e quindi non è un end point CORRETTO nel processo di negoziazione.

508 Loop Detected

Il server ha rilevato un loop infinito durante l'elaborazione della richiesta.

Il server ha terminato un'operazione a causa di un loop infinito riscontrato durante l'elaborazione della richiesta con "Depth: infinity". Questo stato indica che l’intera operazione non è riuscita.

510 Not Extended

Nella request non è stata rispettata la policy di accesso alla risorsa. Il server dovrebbe restituire tutte le informazioni necessarie al client per emettere una richiesta di proroga.

Ulteriori estensioni alla richiesta sono necessarie al server per soddisfarla.

511 Network Authentication Required

Il codice di stato 511 indica che il client deve autenticarsi per ottenere l'accesso alla rete.

599 Network Connect Timeout Error

Questo status code non è specificato in nessun RFCs, ma viene utilizzato da alcuni proxy HTTP per segnalare un timeout della connessione di rete dietro il proxy a un client davanti al proxy.

Condividi questo strumento

Ti è piaciuto? Condividilo!

Condividi questo strumento
Home Back to top of the page