404
Not Found
Spiegazione generale del codice di stato 404
Con il codice di stato 404 Not Found, il server non è riuscito a trovare una risorsa nell'URL specificato. Questo è il messaggio di errore più conosciuto anche dagli utenti non tecnici, poiché anche i siti web di grandi dimensioni hanno strutture di collegamenti rigide e un messaggio di errore 404 Not Found viene lanciato più spesso.
Specifica del codice di stato HTTP 404
Fonte / Citazione da: Il codice di stato HTTP 404 Not Found è specificato dalla sezione 6.5.4. di RFC7231.
Protocollo HTTP
Come lanciare un codice di stato 404 con PHP?
Per lanciare il codice di stato HTTP 404 su una pagina web, si può usare la funzione PHP http_response_code. La sintassi è la seguente: http_response_code(404) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Test del codice di stato HTTP 404
Per poter visualizzare il codice di stato HTTP (in questo caso 404 Not Found) e altre informazioni sul lato client, è necessario aprire la console di sviluppo con F12. Quindi navigare nella scheda "Rete". Ora la pagina può essere aperta, il sito web (ad esempio index.php) dovrebbe essere visibile nella scheda Rete. Questo deve essere selezionato e poi deve essere selezionata la sezione Herder. L'utente vedrà quindi il seguente risultato:
URL: https://http-statuscode.com/errorCodeExample.php?code=404
Stato: 404 Not Found
Quelle: Network
Indirizzo IP: XX.XX.XX.XX
Come posso risolvere il problema del codice di stato 404?
Il codice di stato 404 Not Found può verificarsi per vari motivi. Alcuni sono banali, altri più complessi. Il motivo più probabile è che l'URL sia stato scritto in modo errato o che un link a una pagina interna sia stato impostato in modo errato. Un'altra possibilità è che la pagina collegata sia stata cancellata dal server web e che non sia stato impostato alcun codice di stato successivo, come ad esempio 410 (Gone).
Ma può anche verificarsi un modello di errore un po' più complicato. Se ci si assicura che né l'URL sia stato scritto in modo errato né che la risorsa sia stata cancellata, anche un reindirizzamento dal file "htaccess" può essere difettoso. I reindirizzamenti difettosi possono spesso essere individuati con strumenti web.
Come ultima probabile possibilità, si può prendere in considerazione anche un problema di caching. O il problema è già stato risolto sul lato server, ma la cache del browser non ricarica la pagina, ma dalla memoria locale, oppure il server web non carica nemmeno la versione corrente. In questo caso, la cache deve essere cancellata sia dal lato client che dal lato server.
Come creare la propria pagina di errore per il codice di stato 404
Apache Webserver
Il server web "Apache" è uno dei server web più comuni su Internet. Per creare la propria pagina di errore 404 Not Found in "Apache", è necessario apportare la seguente modifica al file seguente.
NGINX Webserver
Simile al server web "Apache", anche "NGINX" è ampiamente utilizzato su Internet. Per creare la propria pagina di errore 404 Not Found in "NGINX", è necessario apportare la seguente modifica al file seguente.
location = /404.html {
root /usr/share/nginx/html;
internal;
}
Compatibilità con i browser del codice di stato 404
Chrome | Yes |
Edge | Yes |
Firefox | Yes |
Opera | Yes |
Safari | Yes |
Chrome Android | Yes |
Firefox for Android | Yes |
Opera Android | Yes |
Safari on iOS | Yes |
Internet | Yes |
WebView Android | Yes |
Quali effetti SEO ha il codice di stato 404?
Nel mondo dell'ottimizzazione dei motori di ricerca (SEO), il codice di stato 404 Not Found "Not Found" è più di un semplice messaggio di errore. Ha effetti reali e tangibili sul modo in cui i motori di ricerca percepiscono e valutano un sito web.
Quando un utente o un crawler di un motore di ricerca cerca di accedere a una pagina che non c'è e quindi restituisce un errore 404 Not Found, i motori di ricerca lo interpretano come una pagina inesistente. Un errore 404 Not Found sporadico qua e là non avrà necessariamente un effetto drastico sul posizionamento nei motori di ricerca. Tuttavia, un accumulo di tali errori può segnalare ai motori di ricerca che il sito web non è ben mantenuto o aggiornato.
La presenza frequente di errori 404 Not Found può essere percepita dai motori di ricerca come un indicatore di scarsa struttura o manutenzione del sito web. Questo, a sua volta, può avere un impatto negativo sulla fiducia che il motore di ricerca ripone nel sito web. E nel mondo della SEO, la fiducia è tutto. Un sito web di cui i motori di ricerca si fidano tende a posizionarsi meglio nei risultati di ricerca.
Inoltre, come già detto, ogni sito web ha un crawl budget. Questo si riferisce al numero di pagine che un crawler dei motori di ricerca visiterà in un determinato periodo di tempo. Un numero eccessivo di errori 404 Not Found può far sì che una parte significativa di questo budget venga sprecata per pagine inesistenti. Ciò significa che i contenuti nuovi o aggiornati possono impiegare più tempo per essere scoperti e indicizzati dai motori di ricerca.
Un altro problema importante è la perdita di backlink dovuta agli errori 404 Not Found. I backlink sono un fattore di ranking cruciale e se una pagina esterna rimanda a un URL che restituisce un errore 404 Not Found, quel link non sarà più considerato un fattore di ranking positivo dai motori di ricerca.
In sintesi, sebbene gli errori 404 Not Found possano sembrare innocui in superficie, possono avere un grave impatto sul posizionamento di un sito web nei motori di ricerca. È quindi nell'interesse di un webmaster monitorare e correggere regolarmente questi errori per garantire che il sito web mantenga la migliore posizione possibile nei risultati di ricerca.
Costanti nei linguaggi di programmazione
HttpStatusCode.NotFound
http.StatusNotFound
response::HTTP_NOT_FOUND
httplib.NOT_FOUND
http.client.NOT_FOUND
http.HTTPStatus.NOT_FOUND
:not_found
Esempio di "Richiesta del cliente" e "Risposta del server" con codice di stato HTTP 404
Client request:
Host: www.http-statuscode.com
Server response:
Content-Type: text/html
<html>
<head><title>404 Not Found</title></head>
<body>
<h1>Not Found</h1>
<p>The requested URL /missingpage.php was not found on this server.</p>
</body>
</html>
Codici di stato secondari del codice di stato 404
404.0 | Not found HTTP IIS, Non ufficiale |
404.1 | Site Not Found HTTP IIS, Non ufficiale |
404.2 | ISAPI or CGI restriction. HTTP IIS, Non ufficiale |
404.3 | MIME type restriction. HTTP IIS, Non ufficiale |
404.4 | No handler configured HTTP IIS, Non ufficiale |
404.5 | Denied by request filtering configuration HTTP IIS, Non ufficiale |
404.6 | Verb denied HTTP IIS, Non ufficiale |
404.7 | File extension denied HTTP IIS, Non ufficiale |
404.8 | Hidden namespace HTTP IIS, Non ufficiale |
404.9 | Files attribute hidden HTTP IIS, Non ufficiale |
404.10 | Request header too long HTTP IIS, Non ufficiale |
404.11 | Request contains double escape sequence HTTP IIS, Non ufficiale |
404.12 | Request contains high-bit characters HTTP IIS, Non ufficiale |
404.13 | Content length too large HTTP IIS, Non ufficiale |
404.14 | Request URL too long HTTP IIS, Non ufficiale |
404.15 | Query string too long HTTP IIS, Non ufficiale |
404.16 | DAV request sent to the static file handler HTTP IIS, Non ufficiale |
404.17 | Dynamic content mapped to the static file handler HTTP IIS, Non ufficiale |
404.18 | Querystring sequence denied HTTP IIS, Non ufficiale |
404.19 | Denied by filtering rule HTP IIS, Non ufficiale |
404.20 | Too Many URL Segments HTTP IIS, Non ufficiale |
404.501 | Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached HTTP IIS, Non ufficiale |
404.502 | Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached HTTP IIS, Non ufficiale |
404.503 | the IP address is included in the Deny list of IP Restriction HTTP ISS, Non ufficiale |
404.504 | the host name is included in the Deny list of IP Restriction HTTP IIS, Non ufficiale |
Link esterni con ulteriori informazioni sul codice di stato HTTP 404:
Memes divertenti sul codice di stato HTTP 404
Articoli del blog
Codici di stato HTTP: Un'analisi dettagliata dei messaggi di errore 404 Not Found e 410 Gone
I codici di stato HTTP sono una parte essenziale del protocollo HTTP (Hypertext Transfer Protocol), che costituisce la base della comunicazione tra browser e server web. Essi consentono di contrass...
SEO e codici di stato HTTP: Un'analisi completa
Ottimizzare un sito web per i motori di ricerca (SEO) è un'impresa complessa. Uno degli aspetti spesso trascurati ma cruciali per un buon posizionamento sono i codici di stato HTTP. Questi piccoli ...