Erreurs 404 et SEO

L’erreur 404 est une des erreurs les plus fréquentes sur internet. Qui n’est jamais tombé sur une page d’erreur contenant « 404 file not found », « page indisponible » ou encore « fichier introuvable » ? Ce code d’erreur du protocole HTTP symbolise généralement une page qui n’existe pas ou plus. Cela peut être dû à une mauvaise adresse ou à une mauvaise gestion des erreurs qui se multiplient lors de la vie d’un site. Voyons quelles sont ces erreurs, leurs dangers en SEO et comment les corriger.

Qu’est-ce qu’une erreur 404 ?

Comme dit en introduction, une erreur 404 est un code d’erreur du protocole HTTP qui permet d’indiquer qu’un document n’existe pas ou plus. Dans le cas de cette erreur, c’est souvent car un document a été déplacé, supprimé et/ou que l’adresse mentionnée est fausse. Clairement, l’URL ne mène vers rien et le serveur web est en charge de nous l’indiquer.

Normalement, lorsqu’une page est disponible, le serveur renvoie un code 200 qui indique que la page a été trouvée et qu’elle a pu être traitée/fournie à l’utilisateur. Ainsi, lors d’une erreur 404, vous ne pouvez pas apercevoir votre contenu. Le serveur n’a pas su vous « servir » convenablement.

Quels dangers pour le SEO ?

Le problème de la 404, c’est que celle-ci nuit énormément à l’expérience utilisateur. En effet, si, lorsque vous naviguez sur un site, vous cliquez de lien en lien et que vous tombez brusquement sur une page indisponible, vous allez fermer le site. De ce fait, vous serez perdu, « emprisonné » dans cette page souvent sans intérêt.

Ainsi, si les moteurs de recherche s’aperçoivent que vous ne proposez plus un certain contenu ou que vous ne faites pas de redirection vers quelque chose de similaire, ceux-ci risquent de vous pénaliser. Vous aurez une mauvaise expérience utilisateur, un contenu inexistant, un maillage interne détruit en partie, etc.

Clairement, si vous possédez trop d’erreurs 404 (trop d’erreurs tout court d’ailleurs), vous allez sûrement constater des malus au niveau de votre positionnement. Il convient alors de corriger la plupart de ces erreurs.

Pourquoi la plupart ?

Effectivement, j’ai dit que la plupart des erreurs 404 étaient à corriger. Dans certains cas, il n’y a pas besoin d’effectuer de redirection, vous pouvez proposer une page 404 personnalisée (voir plus bas). En effet, si une page 404 s’affiche, car un utilisateur a saisi une mauvaise adresse (fautes de frappe ou autre) ou que la page n’a jamais existé et qu’elle n’a aucun lien vers elle, alors on peut très bien indiquer que le problème n’est pas notre site, mais un élément extérieur à celui-ci (l’utilisateur, un site externe…).

Comment corriger les erreurs 404 ?

Pour corriger des erreurs 404, il faut tout d’abord détecter où elles se trouvent et comment elles se créent. Ainsi, il sera plus facile d’appliquer des solutions précises et rapides.

Détecter les erreurs 404

Il existe plusieurs moyens pour détecter les erreurs 404 au sein d’un site. Je citerai deux de ces moyens.

Pour commencer, on peut utiliser Google Webmaster Tools. Inscrivez votre site et rendez-vous dans l’onglet « Exploration » puis « Erreurs d’exploration ». Généralement, si vous avez des erreurs au sein de cet onglet, c’est que vous avez des choses à corriger. Vous avez accès aux erreurs relatives aux recherches ordinateurs et mobiles. Vous avez les erreurs serveur, les softs 404, les accès refusés et enfin les introuvables.

Interface Google webmaster tools exploration
Les erreurs 404 dans Google webmasters tools

Les onglets qui vont nous intéresser sont les introuvables et les softs 404. Comme vous pouvez le constater, vous avez accès à une liste d’URL ayant renvoyé un code d’erreur avec le code correspondant et la date de sa détection. Vous pouvez télécharger ces URL via le bouton prévu à cet effet et les mettre dans un tableur comme Excel.

Ensuite, une fois les listes d’URL téléchargées via Google Webmaster Tools, je vous suggère de réaliser un crawl de votre site pour détecter les liens cassés ou les pages renvoyant un code 404. Pour cela, vous pouvez utiliser Screaming Frog. Vous entrez votre URL de site, vous lancez le crawl et vous générez la liste des erreurs via le bouton « Bulk Export 4xx ». Vous pouvez rajouter les URL à votre classeur Excel.

Ainsi, vous avez les URL en 404 trouvées par Google et les URL internes à votre site. Il ne vous reste plus qu’à supprimer les doublons avec votre tableur pour avoir une liste complète. Faites juste attention aux URL de chez Google Webmaster Tools, celles-ci peuvent rentrer dans le cadre de 404 à NE PAS rediriger. Notamment sur les gros sites, il existe parfois des erreurs qui proviennent de nulle part.

Corriger les erreurs 404

Maintenant que nous savons quelles URL impactent notre référencement, il ne nous reste plus qu’à les supprimer ou du moins les corriger. Dans la majorité des cas, il faudra simplement rediriger chaque URL vers une nouvelle. Généralement, on redirige via une redirection permanente 301 vers une des pages suivantes :

  • La page la plus proche de notre page 404
  • La catégorie qu’est censée renfermer notre page 404
  • La page d’accueil

En faisant cela, d’une part vous redirigez votre utilisateur vers un contenu similaire qui est disponible (et donc qui l’aidera à retrouver un chemin viable) et de plus vous retransmettez la popularité de votre page 404 à une page de votre site. De plus, c’est sans parler des moteurs qui ne seront plus « emprisonnés » dans une voie sans issue.

A noter qu’il est possible de faire une redirection 302 temporaire pour les contenus qui reprendraient une place à l’adresse de l’erreur 404. C’est l’histoire de revenir en arrière en quelque sorte au cas où le contenu serait retrouvé.

Dans tous les cas, pour effectuer une redirection 301, vous avez plusieurs moyens : via la config de votre serveur ou votre .htaccess, avec PHP, ou encore avec un plugin de votre CMS qui gérera tout cela.

Redirection 301 via .htaccess ou config Apache

Voici le code à ajouter dans votre fichier .htaccess ou dans votre fichier de configuration Apache :

RedirectPermanent /repertoire/page-404-a-rediriger.php http://www.exemple.net/repertoire/page-similaire-cible.php

Bien évidemment, le principe est toujours le même pour les répertoires, un changement de domaine ou autre. Il suffit juste d’indiquer le répertoire seul ou d’indiquer un slash « / » pour désigner la racine d’un site dans le cas d’un changement de domaine.

Redirection 301 en PHP

En PHP, le but est d’exécuter une fonction qui modifiera l’en-tête HTTP de la page. Dans le cas suivant, on indique qu’il faut aller à une autre adresse.

<?php
header("Status: 301 Moved Permanently", false, 301);
header("Location: http://www.exemple.net/repertoire/page.php");
exit();
?>

L’adresse qui est mentionnée sur la 3e ligne « Location », indique le lieu où se trouve la page cible. Ainsi, il faudra renseigner la nouvelle page qui fera suite à la 404. À noter que ce code s’insère dans un document PHP et qu’il convient de le mettre le plus haut possible dans la page.

Redirection 301 avec Nginx

Ayant le même rôle qu’Apache, mais avec des performances souvent meilleures, Nginx sait rediriger vos pages avec une syntaxe propre à lui. Voici la ligne à mettre dans votre fichier de configuration Nginx pour rediriger une page :

   if ( $request_filename ~ ancienne-page-a-rediriger/ ) {
      rewrite ^ http://exemple.com/nouvelle-page/? permanent;
   }

Vous avez juste à mettre l’adresse de l’ancienne page sur la première ligne et la nouvelle en deuxième ligne.

Page 404 personnalisée

Même si vous gérez l’ensemble de vos erreurs 404, beaucoup d’entre elles sont issues de fautes de frappes, d’accès non interne à votre site… Et comme dit plus haut, elles ne sont pas forcément à corriger : vous n’avez pas à rediriger chaque URL que l’internaute ou un robot vous demandera.

Ainsi, il convient de personnaliser une page 404. Par personnaliser, j’entends faire une page agréable, expliquant rapidement le problème avec un design propre à votre site, et renvoyant l’utilisateur ou le robot vers des pages similaires SANS redirection automatique. En clair, une belle page avec des liens vers des pages importantes comme l’accueil, des produits ou articles similaires, une aide… histoire de faire tourner la navigation au sein de votre site.

Conclusion

Trop de pages en erreur 404 nuisent au référencement d’un site. C’est l’expérience utilisateur qui est altérée et il convient de corriger ces erreurs. Il faut d’abord identifier les erreurs via des outils comme Google webmaster tools ou Screaming frog pour ensuite les corriger avec les méthodes qui nous conviennent.

On utilise une redirection 301 pour transmettre le jus de popularité et pour rediriger la page en erreur vers une page proche de manière permanente. On utilise la redirection temporaire 302 pour une erreur qui sera corrigée sous quelques jours. On ne redirige pas et on préfère créer une page d’erreur personnalisée pour les erreurs qui ne proviennent pas vraiment de nous (fautes de frappe, mauvais liens…).