404

Not Found

Officiellement, Codes de sous-statut
Le serveur web n'a pas pu trouver la ressource demandée

Explication générale du code d'état 404

Dans le cas du code d'état 404 Not Found, le serveur n'a pas pu trouver de ressource à l'URL indiquée. Ce message est le message d'erreur le plus connu, même parmi les utilisateurs non techniques, car il existe des structures de liens rigides même pour les grands sites web et un message d'erreur 404 Not Found est souvent lancé.

Spécification du code d'état HTTP 404

Le code d'état 404 Not Found indique que le serveur d'origine n'a pas trouvé de représentation actuelle pour la ressource cible ou qu'il n'est pas prêt à révéler l'existence d'une telle représentation. Un code d'état 404 Not Found n'indique pas si cette absence de représentation est temporaire ou permanente ; le code d'état 410 (Gone) est préféré à 404 Not Found si le serveur d'origine sait, probablement par certains moyens configurables, que l'état est probablement permanent. Une réponse 404 Not Found est mise en cache par défaut, c'est-à-dire sauf indication contraire dans la définition de la méthode ou dans des contrôles de cache explicites (voir la section 4.2.2 de [RFC7234]).

Source / Citation de : Le code d'état HTTP 404 Not Found est spécifié par la section 6.5.4. de RFC7231.

Comment lancer un code d'état 404 avec PHP ?

Pour lancer le code d'état HTTP 404 sur une page web, on peut utiliser la fonction PHP http_response_code. La syntaxe est la suivante : http_response_code(404) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Teste le code d'état HTTP 404

Pour pouvoir afficher le code de statut HTTP (dans ce cas 404 Not Found) et d'autres informations côté client, il faut ouvrir la console de développement avec F12. Ensuite, il faut naviguer vers l'onglet "Réseau". La page peut maintenant être ouverte, la page web (exemple index.php) doit être visible dans l'onglet réseau. Il faut la sélectionner et choisir ensuite le domaine Herder. L'utilisateur voit alors le résultat suivant :

Code d'état 404 Not Found
Aperçu
URL: https://http-statuscode.com/errorCodeExample.php?code=404
Statut: 404 Not Found
Ceux-ci: Network
Adresse IP: XX.XX.XX.XX
Code d'état 404 Not Found

Comment résoudre le problème du code d'état 404 ?

Le code d'état 404 Not Found peut apparaître pour différentes raisons. Certaines sont banales, d'autres un peu plus complexes. La raison la plus probable est que l'URL a été mal écrite ou qu'un lien vers une page interne a été mal placé. Une autre possibilité est que la page liée a été supprimée du serveur web et qu'aucun code d'état suivant tel que 410 (Gone) n'a été défini.

Une erreur un peu plus compliquée peut également se produire. Si l'on s'assure que l'URL n'est pas mal écrite et que la ressource n'a pas été supprimée, une redirection à partir du fichier "htaccess" peut également être erronée. Les redirections erronées peuvent souvent être détectées à l'aide d'outils web.

En dernier lieu, un problème de mise en cache peut être envisagé. Soit le problème a déjà été résolu du côté du serveur, mais le cache de votre navigateur ne recharge pas la page, mais depuis la mémoire locale, soit le serveur web ne charge pas non plus la version actuelle. Dans ce cas, il faut absolument vider le cache, aussi bien du côté client que du côté serveur.

Comment créer une page d'erreur personnalisée pour le code d'état 404 ?

Créer sa propre page d'erreur 404 Not Found est relativement facile, aussi bien avec le serveur web "Apache" qu'avec le serveur web "NGINX".

Apache Webserver

Le serveur web "Apache" est l'un des serveurs web les plus répandus sur Internet. Pour créer sa propre page d'erreur 404 Not Found dans "Apache", il faut effectuer la modification suivante dans le fichier suivant.

File: .htaccess
ErrorDocument 404 /errors/404.html

NGINX Webserver

Tout comme le serveur web "Apache", "NGINX" est également très répandu sur Internet. Pour créer sa propre page d'erreur 404 Not Found dans "NGINX", il faut effectuer la modification suivante dans le fichier suivant.

File: sites-enabled/default
error_page 404 /404.html;
location = /404.html {
    root /usr/share/nginx/html;
    internal;
}

Compatibilité du navigateur avec le code d'état 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

Quels sont les effets SEO du code d'état 404 ?

Dans le monde de l'optimisation des moteurs de recherche (SEO), le code d'état 404 Not Found "Not Found" est plus qu'un simple message d'erreur. Il a un impact réel et tangible sur la manière dont les moteurs de recherche perçoivent et évaluent un site web.

Lorsqu'un utilisateur ou un robot d'exploration des moteurs de recherche tente d'accéder à une page qui n'existe pas et renvoie ainsi une erreur 404 Not Found, les moteurs de recherche l'interprètent comme une page inexistante. Une erreur 404 Not Found sporadique ici et là n'aura pas nécessairement un impact drastique sur le classement des moteurs de recherche. Toutefois, une accumulation de telles erreurs peut signaler aux moteurs de recherche que le site web n'est pas bien entretenu ou mis à jour.

Une occurrence fréquente d'erreurs 404 Not Found peut être perçue par les moteurs de recherche comme un indicateur d'une structure ou d'une maintenance insuffisante du site web. Cela peut à son tour avoir un impact négatif sur la confiance que les moteurs de recherche accordent au site web. Et dans le monde du référencement, la confiance est tout. Un site web en qui les moteurs de recherche ont confiance a tendance à être mieux classé dans les résultats de recherche.

En outre, comme nous l'avons mentionné précédemment, chaque site web a un budget d'exploration. Il s'agit du nombre de pages qu'un robot d'exploration des moteurs de recherche visitera dans un laps de temps donné. Trop d'erreurs 404 Not Found peuvent entraîner le gaspillage d'une partie importante de ce budget pour des pages inexistantes. Cela signifie que le contenu nouveau ou actualisé peut prendre plus de temps pour être découvert et indexé par les moteurs de recherche.

Un autre point important est la perte de backlinks due aux erreurs 404 Not Found. Les backlinks sont un facteur décisif pour le classement, et si une page externe renvoie à une URL qui renvoie une erreur 404 Not Found, ce lien n'est plus considéré par les moteurs de recherche comme un facteur de classement positif.

En résumé, les erreurs 404 Not Found, bien qu'elles puissent sembler anodines en surface, peuvent avoir de graves conséquences sur le classement d'un site dans les moteurs de recherche. Il est donc dans l'intérêt du webmaster de surveiller et de corriger régulièrement ces erreurs afin de s'assurer que le site conserve sa meilleure position possible dans les résultats de recherche.

Les constantes dans les langages de programmation

HttpStatusCode.NotFound
http.StatusNotFound
response::HTTP_NOT_FOUND
httplib.NOT_FOUND
http.client.NOT_FOUND
http.HTTPStatus.NOT_FOUND
:not_found

Exemple de "Client request" et de "Server response" pour le code d'état HTTP 404

Client request:

GET /missingpage.php HTTP/1.1
Host: www.http-statuscode.com

Server response:

HTTP/1.1 404 Not Found
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>

Codes de sous-statut du 404 Code de statut

Les codes de sous-statut sont purement techniques et ne devraient jamais être envoyés à l'utilisateur. Par exemple, si le code d'état 404.1 est lancé, il peut certes être enregistré, mais le code d'état 404 est envoyé à l'utilisateur.:
404.0 Not found
HTTP IIS, Officieusement
404.1 Site Not Found
HTTP IIS, Officieusement
404.2 ISAPI or CGI restriction.
HTTP IIS, Officieusement
404.3 MIME type restriction.
HTTP IIS, Officieusement
404.4 No handler configured
HTTP IIS, Officieusement
404.5 Denied by request filtering configuration
HTTP IIS, Officieusement
404.6 Verb denied
HTTP IIS, Officieusement
404.7 File extension denied
HTTP IIS, Officieusement
404.8 Hidden namespace
HTTP IIS, Officieusement
404.9 Files attribute hidden
HTTP IIS, Officieusement
404.10 Request header too long
HTTP IIS, Officieusement
404.11 Request contains double escape sequence
HTTP IIS, Officieusement
404.12 Request contains high-bit characters
HTTP IIS, Officieusement
404.13 Content length too large
HTTP IIS, Officieusement
404.14 Request URL too long
HTTP IIS, Officieusement
404.15 Query string too long
HTTP IIS, Officieusement
404.16 DAV request sent to the static file handler
HTTP IIS, Officieusement
404.17 Dynamic content mapped to the static file handler
HTTP IIS, Officieusement
404.18 Querystring sequence denied
HTTP IIS, Officieusement
404.19 Denied by filtering rule
HTP IIS, Officieusement
404.20 Too Many URL Segments
HTTP IIS, Officieusement
404.501 Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached
HTTP IIS, Officieusement
404.502 Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached
HTTP IIS, Officieusement
404.503 the IP address is included in the Deny list of IP Restriction
HTTP ISS, Officieusement
404.504 the host name is included in the Deny list of IP Restriction
HTTP IIS, Officieusement

Article de blog

Codes d'état HTTP : Une analyse détaillée des messages d'erreur 404 Not Found et 410 Gone

Les codes d'état HTTP sont un élément essentiel du protocole de transfert hypertexte (HTTP), qui constitue la base de la communication entre les navigateurs web et les serveurs web. Ils permettent ...

SEO et codes d'état HTTP : Une analyse complète

L'optimisation d'un site web pour les moteurs de recherche (SEO) est une entreprise complexe. L'un des aspects souvent négligés, mais décisifs pour un bon classement, sont les codes d'état HTTP. Ce...

Auteur: Tony Brüser
Auteur: Tony Brüser

Tony Brüser est un développeur web enthousiaste avec une prédilection pour les codes de statut HTTP.

LinkedInGitHub