Une page d’erreur 404, que l’on appelle aussi un Error Document 404, est, avant tout, une page informant un utilisateur que la ressource demandée n’existe pas. Par exemple, si un internaute suit un lien et que la page cible n’existe plus, le serveur doit afficher une page d’erreur 404.
- Comment puis-je retourner le bon code de statut HTTP pour une page d’erreur 404 ?
- .htaccess et serveur Apache – configurer convenablement la page d’erreur
- WordPress CMS – configurer convenablement la page d’erreur
- Pourquoi est-il important que les pages d’erreur retournent le bon code de statut HTTP ?
- Vidéo explicative de Matt Cutts de Google sur le sujet
- Comment Google gère-t-il les pages « not found » qui ne retournent pas une 404 ?
- Informations supplémentaires sur le sujet :
Cependant, ce n’est pas l’unique rôle de la page d’erreur 404. Si elle est bien configurée, elle informe aussi le Google-Bot de l’existence réelle ou non d’un document. Pour que cela fonctionne correctement, il est important que la page d’erreur 404 retourne le bon code de statut HTTP 404 – autrement, la page 404 est défectueuse.
Comment puis-je retourner le bon code de statut HTTP pour une page d’erreur 404 ?
Les serveurs ou le Content Management System (CMS) utilisés ne sont souvent pas configurés correctement. Cela peut résulter en une page d’erreur qui retourne le code de statut HTTP 200 (OK) ou en une redirection 301 qui renvoie l’utilisateur, ainsi que le Google-Bot, vers une autre page. Dans les deux cas, il faut considérer cela comme une page 404 défectueuse, ce que l’on appelle une erreur soft 404.
Dans cet article, nous vous expliquerons la bonne configuration d’une page d’erreur 404 à mettre en place, avec le code de statut HTTP 404 approprié. Nous ferons en fait la différence entre deux cas d’utilisation :
.htaccess et serveur Apache – configurer convenablement la page d’erreur
Selon si on utilise des fichiers .html ou .php pour le site Web ou si on est resté sur une structure dossier – une page d’erreur 404 est créée en mettant ce qui suit dans le fichier .htaccess :
Pour cela, ouvrez ou créez le fichier .htaccess et ajoutez-y le chemin relatif vers la page d’erreur. Il est important de d’abord créer la page d’erreur (404.html, par exemple) au premier niveau de votre site Web, ce qu’on appelle le répertoire racine.
ErrorDocument 404 /404.html
Le processus complet, étape par étape :
- créez une page d’erreur (404.html ou 404.php) au premier niveau de votre site Web (répertoire racine)
- ouvrez le fichier .htaccess – ou créez-le s’il y n’en a pas déjà (aussi dans le répertoire racine)
- saisissez « ErrorDocument 404 », suivi du chemin relatif vers la page d’erreur
- sauvegardez, et demandez une page qui n’existe pas, comme http://www.your-domain.com/98899351
- maintenant vous devriez voir le contenu de la page d’erreur 404.html
- utilisez httpstatus.io (par exemple) pour vérifier que c’est bien le code de statut HTTP 404 qui est retourné
WordPress CMS – configurer convenablement la page d’erreur
Si on utilise le CMS de WordPress, il est facile de retourner le bon code d’erreur pour une page 404 – sous réserve que le thème qu’on utilise la prend en charge.
Beaucoup de thèmes WordPress, appelés designs ou modèles, utilisent un fichier 404.php dans le dossier du thème. Si vous n’arrivez pas à trouver ce fichier, configurez simplement une page d’erreur en utilisant .htaccess.
Ouvrez le fichier 404.php dans votre thème WordPress actif, et saisissez ce qui suit dans la première ligne :
La page d’erreur 404.php se trouve en général dans le répertoire du thème dans /wp-content/themes/nom-du-theme-actif/
<?php
header("HTTP/1.0 404 Not Found");
?>
Le processus complet, étape par étape :
- trouvez et ouvrez la page d’erreur dans le dossier du thème WordPress (généralement « 404.php »)
- ajoutez le code source PHP ci-dessus à la première ligne et sauvegardez le fichier
- ouvrez une page qui n’existe pas, comme http://www.your-domain.com/98899351
- maintenant vous devriez voir le contenu de la page d’erreur 404.php
- utilisez httpstatus.io (par exemple) pour vérifier que c’est bien le code de statut HTTP 404 qui est retourné
Pourquoi est-il important que les pages d’erreur retournent le bon code de statut HTTP ?
Un serveur devrait retourner le code de statut HTTP 404 (Not found) ou 410 (Gone) si une URL n’existe pas. S’il y a de vieux liens sur le Web, ou des liens incorrects sur votre site Internet, Google ne pourra comprendre que la page cible n’existe pas (ou plus) que si vous retournez un code de statut HTTP 404 ou 410.
C’est pourquoi il faut s’assurer que la page d’erreur de votre site Web répond toujours avec le bon code de statut HTTP 404. Rediriger les pages inexistantes vers la page d’accueil à l’aide d’une redirection 301 n’est pas recommandé, car cela peut poser des problèmes.
Vidéo explicative de Matt Cutts de Google sur le sujet
Comment Google gère-t-il les pages « not found » qui ne retournent pas une 404 ?
Comment Google gère-t-il les pages « non trouvées » qui retournent un code 200 au lieu d’un 404 ? Est-ce une forme de spam ? Google peut-il détecter cette incompatibilité de façon algorithmique ?
Informations supplémentaires sur le sujet :
- Aide Search Console : Créer des pages d’erreur 404 utiles
- Que sont les erreurs Soft 404 ?