{"id":1027,"date":"2011-05-30T01:31:21","date_gmt":"2011-05-29T23:31:21","guid":{"rendered":"http:\/\/xlogic.org\/blog\/?p=1027"},"modified":"2026-08-01T14:25:31","modified_gmt":"2026-08-01T12:25:31","slug":"codici-di-stato-http","status":"publish","type":"post","link":"https:\/\/xlogic.org\/blog\/codici-di-stato-http.html\/","title":{"rendered":"Codici di stato HTTP: significato e diagnosi"},"content":{"rendered":"<p><!-- xlogic-seo-lotto50-2-20260801:1027 --><\/p>\n<div class=\"xlogic-direct-answer\">\n<p><strong>I codici di stato HTTP indicano il risultato di una richiesta tra client e server.<\/strong> Le classi 2xx segnalano successo, 3xx reindirizzamento, 4xx problemi lato richiesta o accesso e 5xx errori del server. La diagnosi deve considerare URL, header, log e comportamento dell\u2019applicazione.<\/p>\n<p><em><strong>Nota di aggiornamento:<\/strong> Lo stesso codice pu\u00f2 avere cause diverse. Prima di correggere controlla risposta completa, redirect, cache, proxy e log del server.<\/em><\/p>\n<\/div>\n<h2>Informazioni aggiornate e controlli essenziali<\/h2>\n<p>Questa che segue \u00e8 la lista completa dei codici di stato e dei relativi messaggi definiti per\u00a0<strong>HTTP<\/strong>.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>1xx Informational : <\/strong>Richiesta ricevuta, continua l&#8217;elaborazione.<\/p>\n<p>100 Continue : Il server ha ricevuto l&#8217;header della richiesta e il client deve procedere ad inviare il corpo della richiesta (solitamente nelle richieste di tipo POST).<\/p>\n<p>101 Switching Protocols : Il richiedente ha richiesto di cambiare il protocollo in uso e il server \u00e8 a conoscenza di ci\u00f2 che dovr\u00e0 fare.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>2xx Success<\/strong> : L&#8217;azione \u00e8 stata ricevuta con successo, compresa ed accettata.<\/p>\n<p>200 OK : Risposta standard per le richieste HTTP andate a buon fine.<\/p>\n<p>201 Created<\/p>\n<p>202 Accepted : La richiesta di elaborazione \u00e8 stata accettata ma non \u00e8 ancora terminata.<\/p>\n<p>203 Non-Authoritative Information<\/p>\n<p>204 No Content<\/p>\n<p>205 Reset Content<\/p>\n<p>206 Partial Content<\/p>\n<p>207 Multi-Status : In caso di risposte\u00a0XML, quando pi\u00f9 azioni possono essere richieste, i dettagli dei singoli stati sono dati nel corpo della risposta. Vedi\u00a0WebDAV (<em>RFC 4918<\/em>) per le specifiche associate.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>3xx Redirezione : <\/strong>Il client deve eseguire ulteriori azioni per soddisfare la richiesta.<\/p>\n<p>300 Multiple Choices<\/p>\n<p>301 Moved Permanently : Questa \u00e8 tutte le future richieste andranno dirette ad un altro\u00a0<strong>URI<\/strong> (specificato nell&#8217;header Location).<\/p>\n<p>302 Found : Questo \u00e8 il codice pi\u00f9 usato ma anche un classico esempio di non aderenza agli standard nella pratica quotidiana. Infatti, le specifiche di HTTP\/1.0 (<em>RFC 1945<\/em>) richiederebbero che il client esegua redirezioni temporanee (la descrizione originale era &#8220;Moved Temporarily&#8221;), ma i pi\u00f9 diffusi browser l&#8217;hanno implementata come 303 descritta di seguito. Perci\u00f2, HTTP\/1.1 ha aggiunto i codici di stato 303 e 307 per distinguere tra i due comportamenti. Comunque, la maggior parte delle applicazioni e dei framework web ancora usano il codice di stato 302 come se fosse il 303.<\/p>\n<p>303 See Other (da HTTP\/1.1) : La risposta alla richiesta pu\u00f2 essere trovata sotto un&#8217;altra URI usando il metodo GET.<\/p>\n<p>304 Not Modified<\/p>\n<p>305 Use Proxy (da HTTP\/1.1) : Molti client HTTP (come\u00a0<strong>Mozilla<\/strong> ed\u00a0<strong>Internet Explorer<\/strong>) non gestiscono correttamente le risposte con questo codice di stato.<\/p>\n<p>306 Switch Proxy : Non pi\u00f9 usato.<\/p>\n<p>307 Temporary Redirect (da HTTP\/1.1) : In quest&#8217;occasione, la richiesta dovrebbe essere ripetuta con un&#8217;altra URI, ma successive richieste possono essere ancora dirette a quella originale. In contrasto con 303, la richiesta di POST originale deve essere reiterata con un&#8217;altra richiesta di tipo POST.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>4xx Client Error : <\/strong>La richiesta \u00e8 sintatticamente scorretta o non pu\u00f2 essere soddisfatta.<\/p>\n<p>400 Bad Request : La richiesta non pu\u00f2 essere soddisfatta a causa di errori di\u00a0sintassi.<\/p>\n<p>401 Unauthorized : Simile a 403\/Forbidden, ma pensato per essere usato quando l&#8217;autenticazione \u00e8 possibile ma \u00e8 fallita o non pu\u00f2 essere fornita.<\/p>\n<p>402 Payment Required : L&#8217;intendimento originale prevedeva un suo utilizzo per realizzare meccanismi di\u00a0digital cash\/micropagamento, ma questo non si \u00e8 mai verificato ed il codice non \u00e8 mai stato utilizzato.<\/p>\n<p>403 Forbidden : La richiesta \u00e8 legittima ma il server si rifiuta di soddisfarla. Contrariamente al codice\u00a0<em>401 Unauthorized<\/em>, l&#8217;autenticazione non ha effetto.<\/p>\n<p>404 Not Found : La risorsa richiesta non \u00e8 stata trovata ma in futuro potrebbe essere disponibile.<\/p>\n<p>405 Method Not Allowed : La richiesta \u00e8 stata eseguita usando un metodo non permesso. Ad esempio questo accade quando di usa il metodo GET per inviare dati da presentare con un metodo POST.<\/p>\n<p>406 Not Acceptable<\/p>\n<p>407 Proxy Authentication Required<\/p>\n<p>408 Request Timeout : Il tempo per inviare la richiesta \u00e8 scaduto e il server ha terminato la connessione.<\/p>\n<p>409 Conflict<\/p>\n<p>410 Gone : Indica che la risorsa richiesta non \u00e8 pi\u00f9 disponibile e non lo sar\u00e0 pi\u00f9 in futuro.<\/p>\n<p>411 Length Required : La richiesta non specifica la propria dimensione come richiesto dalla risorsa richiesta.<\/p>\n<p>412 Precondition Failed 413 Request Entity Too Large : La richiesta \u00e8 pi\u00f9 grande di quanto il server possa gestire.<\/p>\n<p>414 Request-URI Too Long : L&#8217;URI richiesto \u00e8 troppo grande per essere processato dal server.<\/p>\n<p>415 Unsupported Media Type : L&#8217;entit\u00e0 della richiesta \u00e8 di un tipo non accettato dal server o dalla risorsa richiesta.<\/p>\n<p>416 Requested Range Not Satisfiable<\/p>\n<p>417 Expectation Failed<\/p>\n<p>418 I&#8217;m a teapot : Questo \u00e8 un tipico\u00a0pesce d&#8217;aprile dell&#8217;ITEF (<em>RFC 2324<\/em>). Non si aspettano implementazioni in alcun server HTTP.<\/p>\n<p>426 Upgrade Required (<em>RFC 2817<\/em>) : Il client dovrebbe cambiare il protocollo ed usare ad esempio il\u00a0TLS\/1.0. 449 Retry With Estensione di Microsoft:\u00a0<em>The request should be retried after doing the appropriate action.<\/em><\/p>\n<p>&nbsp;<\/p>\n<p><strong>5xx Server Error : <\/strong>Il server ha fallito nel soddisfare una richiesta apparentemente valida.<\/p>\n<p>500 Internal Server Error : Messaggio di errore generico senza alcun dettaglio.<\/p>\n<p>501 Not Implemented : Il server non \u00e8 in grado di soddisfare il metodo della richiesta.<\/p>\n<p>502 Bad Gateway<\/p>\n<p>503 Service Unavailable : Il server non \u00e8 al momento disponibile. Generalmente \u00e8 una condizione temporanea.<\/p>\n<p>504 Gateway Timeout<\/p>\n<p>505 HTTP Version Not Supported : Il server non supporta la versione HTTP della richiesta.<\/p>\n<p>509 Bandwidth Limit Exceeded : Questo codice di stato, bench\u00e9 usato da molti server, non \u00e8 un codice di stato ufficiale in quanto non \u00e8 specificato in alcuna RFC.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<h2>Approfondimenti correlati<\/h2>\n<ul>\n<li><a href=\"https:\/\/xlogic.org\/blog\/404-not-found-errori-comuni-http.html\/\">Errore 404 Not Found: cause e soluzioni<\/a><\/li>\n<li><a href=\"https:\/\/xlogic.org\/blog\/err_connection_timed_out-cause-e-soluzioni.html\/\">ERR_CONNECTION_TIMED_OUT: cause e soluzioni<\/a><\/li>\n<\/ul>\n<p><strong>Fonte ufficiale:<\/strong> <a href=\"https:\/\/developer.mozilla.org\/it\/docs\/Web\/HTTP\/Status\" target=\"_blank\" rel=\"noopener noreferrer\">MDN: codici di stato HTTP<\/a>.<\/p>\n<h2>Domande frequenti<\/h2>\n<h3>Qual \u00e8 la differenza tra 404 e 410?<\/h3>\n<p>404 indica risorsa non trovata o non disponibile; 410 comunica che la risorsa \u00e8 stata rimossa intenzionalmente e in modo presumibilmente definitivo.<\/p>\n<h3>Cosa significa errore 500?<\/h3>\n<p>\u00c8 una risposta generica del server. Per individuarne la causa servono log applicativi e web server, modalit\u00e0 debug controllata e verifica delle modifiche recenti.<\/p>\n<h3>Un redirect 301 \u00e8 sempre corretto?<\/h3>\n<p>Solo quando lo spostamento \u00e8 permanente e la destinazione \u00e8 realmente equivalente. Catene e redirect inutili possono creare problemi.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Codici di stato HTTP: scopri classi 1xx, 2xx, 3xx, 4xx e 5xx, significato delle risposte comuni e controlli per diagnosticare gli errori.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[50,1410],"tags":[140,139,138,141,137,52,132,84],"class_list":["post-1027","post","type-post","status-publish","format-standard","hentry","category-info","category-blogging","tag-140","tag-139","tag-138","tag-141","tag-codici-stato-http","tag-domini","tag-redirect-301","tag-robots"],"modified_by":"Team tecnico Xlogic","_links":{"self":[{"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/posts\/1027","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/comments?post=1027"}],"version-history":[{"count":0,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/posts\/1027\/revisions"}],"wp:attachment":[{"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/media?parent=1027"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/categories?post=1027"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/tags?post=1027"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}