Errore 404

L'errore 404, o Not Found (in italiano "Non Trovato"), è un codice di stato standard del protocollo HTTP.[1] Indica che il client è riuscito a comunicare con il server, ma che la risorsa richiesta non è stata trovata. In alcuni casi il server può essere configurato in modo da rispondere con un errore 404 anche quando la risorsa esiste, per motivi amministrativi o di sicurezza. L'errore 404 va distinto dagli errori legati al mancato raggiungimento del server, come quelli in cui la connessione non viene proprio stabilita. Nel protocollo HTTP, ogni richiesta riceve una risposta contenente un codice di stato numerico. Nel caso del codice 404, la prima cifra segnala un errore attribuito al client, mentre le altre due specificano il tipo di problema riscontrato. Questo errore compare spesso quando una pagina è stata spostata, eliminata, o quando l'indirizzo digitato non è corretto. Quando una risorsa è stata trasferita in modo definitivo, è preferibile restituire un codice 301. Quando invece la risorsa non è più disponibile e non tornerà online, è più conveniente usare un codice 410 Gone.[2] Nella pratica, però, molti siti continuano a restituire un errore 404.
Panoramica
Quando si comunica tramite il protocollo HTTP, un server deve rispondere a una richiesta, ad esempio quella del browser web per una pagina web, con un codice di risposta numerico e un messaggio facoltativo, obbligatorio o vietato (in base al codice di stato). Nel codice 404, la prima cifra indica un errore del client, ad esempio un URL (Uniform Resource Locator) digitato in modo errato. Le due cifre seguenti indicano l'errore specifico riscontrato. L'uso nel protocollo HTTP di codici a tre cifre è simile all'uso di tali codici in protocolli precedenti, come FTP e NNTP. A livello HTTP, un codice di risposta 404 è seguito di norma da un messaggio di "motivazione". La specifica HTTP suggerisce la frase "Non trovato"[3] e molti server web, per impostazione predefinita, emettono una pagina HTML che include sia il codice 404 che la frase "Non trovato".
Spesso viene restituito un errore 404 quando le pagine sono state spostate o eliminate. Nel primo caso, sarebbe meglio utilizzare la mappatura di URL o il reindirizzamento di URL, restituendo come risposta un errore 301 "Moved Permanently", che può essere configurata nella maggior parte dei file di configurazione del server, o tramite la riscrittura dell'URL. Nel caso di pagina eliminata, invece, dovrebbe essere restituito l'errore 410 Gone. Poiché queste due opzioni richiedono una configurazione del server speciale, la maggior parte dei siti web non le utilizza.
Gli errori 404 non devono essere confusi con gli errori DNS, che compaiono quando l'URL fornito fa riferimento a un nome di server che non esiste. Un errore 404 indica che il server stesso è stato trovato, ma che esso non è stato in grado di recuperare la pagina richiesta.
Errori soft 404
Alcuni siti web segnalano un errore "non trovato" restituendo una pagina web standard, con un codice di risposta "200 OK", e segnalando erroneamente che la pagina è stata caricata correttamente. Questo evento è noto come soft 404[4], termine introdotto nel 2004 da Ziv Bar-Yossef et al.[5]
I soft 404 sono errori problematici se si vogliono utilizzare metodi automatizzati per scoprire collegamenti interrotti. Alcuni motori di ricerca, come Yahoo e Google, utilizzano processi automatizzati per rilevare i soft 404.[4] Essi possono verificarsi a seguito di errori di configurazione di determinati software del server HTTP, ad esempio in Apache HTTP Server, quando un documento di errore 404 (specificato in un file .htaccess) è specificato come percorso assoluto piuttosto che un percorso relativo (/error.html).[6] Questo può anche essere fatto apposta per forzare alcuni browser (come il superato Internet Explorer[7]) per visualizzare un messaggio di errore 404 personalizzato, anziché sostituire ciò che viene fornito con un messaggio di errore "descrittivo" specifico del browser. In Internet Explorer, browser ora obsoleto, questo comportamento si attivava quando veniva offerto un 404 e l'HTML ricevuto era più corto di una certa lunghezza, e poteva essere disabilitato manualmente dall'utente.
Esistono anche errori "soft 3XX", in cui il contenuto viene restituito con uno stato 200 ma proviene da una pagina reindirizzata, ad esempio quando le pagine mancanti vengono reindirizzate alla home page/root del dominio.
Server proxy
Alcuni server proxy generano un errore 404 anche quando un codice di errore di intervallo 500 sarebbe più corretto. Se il server proxy non è in grado di soddisfare una richiesta per una pagina a causa di un problema con l'host remoto (come errori di risoluzione del nome host o connessioni TCP rifiutate), questo dovrebbe essere descritto come un errore interno del server (5xx), ma potrebbe invece fornire un 404. Questo può confondere i programmi, che si aspettano e agiscono su risposte specifiche, poiché non possono più distinguere facilmente tra un server web assente e una pagina web mancante ma su un server web presente.
404 intenzionali
Nel luglio 2004, il provider di telecomunicazioni britannico BT Group ha implementato il sistema di blocco dei contenuti Cleanfeed, che restituisce un errore 404 a qualsiasi richiesta di contenuto identificato come potenzialmente illegale dalla Internet Watch Foundation.[8] Altri ISP restituiscono un errore HTTP 403 "vietato" nelle stesse circostanze.[9] La pratica di utilizzare falsi errori 404 come mezzo per nascondere la censura è stata segnalata anche in Thailandia[10] e Tunisia.[11] In Tunisia, dove la censura era severa prima della rivoluzione del 2011, le persone si sono rese conto della natura dei falsi errori 404 e hanno creato un personaggio immaginario chiamato "Ammar 404 ", che rappresenta "il censore invisibile".[12]
Codici di errore dello stato secondario di Microsoft Internet Server 404
Il software del server web sviluppato da Microsoft, Internet Information Services (IIS), restituisce una serie di codici di stato secondario con le sue 404 risposte. I codici di stato secondario assumono la forma di numeri decimali aggiunti al codice di stato 404. I codici di stato secondario non sono ufficialmente riconosciuti da IANA e non vengono restituiti da server non Microsoft.
Codici di stato secondario
I server IIS 7.0, IIS 7.5 e IIS 8.0 di Microsoft definiscono i seguenti codici di stato secondario HTTP per indicare una causa più specifica di un errore 404:
- 404.0 - Non trovato.
- 404.1 - Sito non trovato.
- 404.2 - Restrizione ISAPI o CGI.
- 404.3 - Restrizione del tipo MIME.
- 404.4 - Nessun gestore configurato.
- 404.5 - Negato dalla richiesta di configurazione del filtro.
- 404.6 - Verbo negato.
- 404.7 - Estensione del file negata.
- 404.8 - Spazio dei nomi nascosto.
- 404.9 - Attributo del file nascosto.
- 404.10 - Intestazione della richiesta troppo lunga.
- 404.11 - La richiesta contiene una doppia sequenza di escape.
- 404.12 - La richiesta contiene caratteri a bit elevato.
- 404.13 - Lunghezza del contenuto troppo grande.
- 404.14 - URL richiesta troppo lungo.
- 404.15 - Stringa di query troppo lunga.
- 404.16 - Richiesta DAV inviata al gestore di file statici.
- 404.17 - Contenuto dinamico mappato al gestore di file statico tramite una mappatura MIME con caratteri jolly.
- 404.18 - Sequenza di stringhe di query negata.
- 404.19 - Negato dalla regola di filtraggio.
- 404.20 - Troppi segmenti URL.
Pagine di errore personalizzate
I server web possono in genere essere configurati per visualizzare una pagina di errore 404 personalizzata, inclusa una descrizione più naturale, il marchio del sito padre e talvolta una mappa del sito, un modulo di ricerca o un widget di 404 pagine.

La frase a livello di protocollo, che è nascosta all'utente, è raramente personalizzata. Internet Explorer, tuttavia, non visualizzava le pagine personalizzate a meno che non fossero più grandi di 512 byte, scegliendo invece di visualizzare una pagina di errore "semplice".[13] Un altro problema è che se la pagina non fornisce una favicon ed esiste una pagina 404 personalizzata separata, traffico aggiuntivo e tempi di caricamento più lunghi verranno generati su ogni visualizzazione di pagina.[14][15]
Molte organizzazioni utilizzano le pagine di errore 404 come un'opportunità per iniettare umorismo in quello che altrimenti potrebbe essere un sito Web serio. Ad esempio, Metro UK mostra un orso polare su uno skateboard e l'agenzia di sviluppo web Left Logic ha un semplice programma di disegno.[16] Durante la campagna elettorale britannica del 2015, i principali partiti politici hanno utilizzato le loro 404 pagine per prendere di mira gli oppositori politici o mostrare le politiche pertinenti ai potenziali sostenitori.[17]
Mentre molti siti Web inviano informazioni aggiuntive in un messaggio di errore 404, ad esempio un collegamento alla home page di un sito Web o una casella di ricerca, alcuni tentano anche di trovare la pagina Web corretta desiderata dall'utente. A tale scopo, sono disponibili estensioni per alcuni sistemi di gestione dei contenuti (CMS).[18]
Iniziative benefiche
NotFound.org (in collaborazione con Telefono Azzurro, Missing Children Europe, Famous e Amazon), raccogliendo le segnalazioni di bambini scomparsi nell'Unione Europea, ha lanciato un'iniziativa per la personalizzazione e l'uso a scopo solidale della pagina di errore 404. Installando un'applicazione, tramite l'integrazione di un iframe nella pagina errore 404, mostra un banner con la foto e la descrizione di un bambino scomparso[19].
Monitoraggio degli errori 404
Esistono numerosi strumenti che scansionano un sito Web per trovare pagine che restituiscono codici di stato 404. Questi strumenti possono essere utili per trovare collegamenti che esistono all'interno di un particolare sito web. Il limite di questi strumenti è che trovano solo collegamenti all'interno di un particolare sito Web e ignorano i 404 derivanti da collegamenti su altri siti Web. Di conseguenza, questi strumenti perdono l'83% dei 404 sui siti web.[20] Un modo per aggirare questo problema è trovare errori 404 analizzando i collegamenti esterni.[21]
Uno dei metodi più efficaci per scoprire gli errori 404 è utilizzare Google Search Console, Google Analytics o il software di scansione.
Un'altra tecnica comune è il monitoraggio del traffico verso pagine 404 utilizzando l'analisi dei file di registro.[22] Questo può essere utile per capire di più su ciò che gli utenti 404s hanno raggiunto sul sito. Un altro metodo per monitorare il traffico verso le pagine 404 è l'utilizzo di strumenti di monitoraggio del traffico basati su JavaScript.[20]
Note
- ↑ (EN) Status Code Definitions, su w3.org. URL consultato il 1º febbraio 2019.
- ↑ Riccardo Esposito, Errore 410 (gone): cos'è e come risolvere se necessario, su Serverplan Blog, 16 settembre 2019. URL consultato il 2 giugno 2026.
- ↑ 404, su tools.ietf.org.
- 1 2 Your crawler is asking for strange URLs that never existed on my site, like /piopio/darkness-halo-bottom-camera.htm. Are you looking on the wrong host? - Yahoo Help, su help.yahoo.com. URL consultato il 1º febbraio 2021 (archiviato dall'url originale il 15 luglio 2014).
- ↑ Ziv Bar-Yossef, Andrei Z. Broder e Ravi Kumar, Sic transit gloria telae: towards an understanding of the web's decay, in Proceedings of the 13th international conference on World Wide Web, Association for Computing Machinery, 17 maggio 2004, pp. 328-337, DOI:10.1145/988672.988716. URL consultato il 1º febbraio 2021.
- ↑ (EN) Farewell to soft 404s, su Official Google Webmaster Central Blog. URL consultato il 1º febbraio 2021.
- ↑ Dario d’Elia, Microsoft 365 abbandonerà Internet Explorer 11 da agosto 2021, su Corriere della Sera, 21 agosto 2020. URL consultato il 1º febbraio 2021.
- ↑ LINX Public Affairs » Cleanfeed: the facts, su publicaffairs.linx.net. URL consultato il 1º febbraio 2021 (archiviato dall'url originale il 13 maggio 2011).
- ↑ (EN) 403 Forbidden Error: What It Is and How to Fix It, su Airbrake, 12 ottobre 2017. URL consultato il 1º febbraio 2021.
- ↑ tahilandia, su bangkokpost.com.
- ↑ Tunisian journalist sues government agency for blocking Facebook, claims damage for the use of 404 error message instead of 403 | OpenNet Initiative, su opennet.net. URL consultato il 1º febbraio 2021.
- ↑ (EN) Anti-censorship movement in Tunisia: creativity, courage and hope!, su Global Voices Advox, 27 maggio 2010. URL consultato il 1º febbraio 2021.
- ↑ Friendly HTTP Error Pages - EricLaw's IEInternals - Site Home - MSDN Blogs, su blogs.msdn.com. URL consultato il 1º febbraio 2021 (archiviato dall'url originale il 2 dicembre 2010).
- ↑ favicon, su thesitewizard.com.
- ↑ (EN) The Dastardly "favicon.ico not found" Error, su internetfolks.com. URL consultato il 1º febbraio 2021.
- ↑ (EN) From skateboarding bears to missing children: The power of the 404 error page, su Metro, 16 aprile 2013. URL consultato il 1º febbraio 2021.
- ↑ (EN) The political Page 404 war, in BBC News, 27 aprile 2015. URL consultato il 1º febbraio 2021.
- ↑ (EN) Make your 404 pages more useful, su Official Google Webmaster Central Blog. URL consultato il 1º febbraio 2021.
- ↑ (EN) Missing children messages go on 404 error pages, in BBC News, 27 settembre 2012. URL consultato il 1º febbraio 2021.
- 1 2 (EN) How To Find & Fix 404 Errors On Website, su Matthew Edgar, 4 maggio 2019. URL consultato il 1º febbraio 2021.
- ↑ A Data-Centric Approach To Identifying 404 Pages Worth Saving, su Search Engine Land, 2 aprile 2013. URL consultato il 1º febbraio 2021.
- ↑ 404, su 404errorpages.com.
Voci correlate
Altri progetti
Wikimedia Commons contiene immagini o altri file sull'errore 404
Collegamenti esterni
- (EN) Denis Howe, 404, in Free On-line Dictionary of Computing. Disponibile con licenza GFDL