Trouver et gérer les erreurs 404 de son site : méthode et outils

Erreur 404 - page introuvable

Au fil de sa vie, un site évolue, les autres sites aussi, ce qui fait qu'au bout d'un moment il est fréquent de cumuler les erreurs 404 (page inexistante). Ceci peut être provoqué par des URL qui ont changé ou disparu sur votre site, mais aussi par ces mêmes changements sur vos liens externes.

Voyons pourquoi et comment corriger les erreurs 404.

Pourquoi corriger les erreurs 404 ?

Pour vos visiteurs : Quoi de plus désagréable que d'arriver sur une page 404 quand on clique sur un lien ? Cela donne une mauvaise image de votre site qui est de suite perçu comme n'étant pas mis à jour. Accessoirement, ceci peut vous faire perdre des ventes sur un e-commerce par exemple.

Pour Google : Un site qui contient trop d'erreurs 404 externes (liens vers des pages externes inexistantes) n'est sans doute pas perçu comme très à jour. Mais surtout, il est possible que des sites externes fassent des liens vers vous et que ceux-ci pointent sur des pages en erreur. Et là, vous perdez tout, le visiteur, et le « jus » des liens qui améliorait votre classement.

Comment corriger ces erreurs ?

Les erreurs 404 internes

Le premier réflexe à avoir est de voir si on ne créé pas nous-mêmes ces erreurs.

Pour cela, on peut utiliser un logiciel comme Screaming Frog. C'est un crawler qui va parcourir votre site et vous remonter beaucoup d'infos, notamment vos liens internes en erreur.
La version gratuite ne crawl que 500 URL de votre site, mais c'est déjà ça.

1/ je saisis l'url de mon site et je clique sur « Start » puis je laisse mouliner
2/ je clique sur l'onglet « internal »
3/ Je clique sur la colonne « status code » pour trier les codes.
4/ Quand je vois une 404, je clique sur la ligne
5/ Je choisis l'onglet « Inlink » dans le tableau du bas.
6/ Le détail m'indique sur quelle page est mon lien brisé et vers quelle page il pointe.

Je peux alors aller corriger sur la page de mon site le lien qui pointe vers une erreur. C'est sans doute le cas, car la page liée n'existe plus ou a changé d'URL. Voir en détail l'exemple ci-dessous.

Screaming Frog

Cliquez pour agrandir l'image.

J'insiste lourdement sur cette étape, car il sera bien plus facile de passer aux suivantes s’il n'existe plus d'erreur 404 générées par notre propre site.

Dans la pratique, en cliquant sur l'onglet « External » vous verrez que de la même manière vous afficherez le détail des liens que votre site fait vers des pages qui n'existent plus sur des sites externes.

Ce que Google voit de nos erreurs 404.

Parce que Google est généralement le premier moteur qui nous intéresse et qu'il nous propose un outil pour cela, nous allons l'utiliser (même s'il n'est pas parfait), il s'agit de la console Google Webmaster tools. Ceci va nous permettre de connaitre les liens entrants externes qui pointent vers des pages de notre site qui n'existent plus.

1/ Connectez-vous à votre compte Google et allez sur Google Webmaster Tools. Choisissez le site concerné si vous en avez plusieurs sur votre compte.

2/ Dans la colonne de gauche, cliquez sur « Exploration » puis « Erreurs d'exploration ».
Google va vous afficher une liste des erreurs qu'il a repérées.

Erreurs sur Google webmaster tools

Toutes les erreurs 404 listées par GWT

3 / Cliquez sur une ligne d'erreur pour en afficher le détail

4/ Cliquez sur l'onglet « Référencée sur ».
C'est à partir d'ici que tout se joue.

Detail d'une erreur sur GWT

Detail d'une erreur sur GWT

Nous avions vu les erreurs internes.
On se rend compte que Google affiche 2 types d'erreurs 404. Celles issues du site lui-même, les erreurs internes (dans l'exemple : babystock.fr) et celles issues de sites externes.
Souvenez-vous, en amont, vous avez corrigé toutes vos erreurs internes, ce qui veut dire que le problème les concernant va se régler de lui-même.  Si Google ne vous présente que des erreurs 404 internes, vous pouvez cliquer sur « Marquer comme corrigées », si l'erreur revient, Google vous la ressortira.

Reste les erreurs en provenance de sites externes.
Dans l'exemple, on voit que des liens à partir du site jumeaux-et-plus.fr pointent vers des pages qui n'existent plus sur le site.
En cliquant sur les URL, on pourra afficher le site externe pour voir ce qu'il en est. Voir l'image ci-dessous.

À vous de rediriger en 301 les URLs inexistantes pour les faire pointer vers la page de votre choix sur votre site (un article similaire, la catégorie supérieure...)

Dans le framework des sites que nous développons, une interface simple permet de gérer cela. Si vous utilisez des CMS, certains proposent des solutions plus ou moins bien foutues. Il existe aussi des plugins conçus pour divers CMS du marché.
Si ce n'est pas le cas, vous devrez effectuer vos redirections en allant les intégrer dans votre fichier .htaccess, j'admets que c'est un peu plus compliqué et risqué si on ne sait pas ce que l'on fait...

Exemple d'interface de redirection sur le framework AxeNet

Exemple d'interface de redirection sur le framework AxeNet

Pour aller plus loin

Si j'ai pris l'exemple de babystock, c'est que nous venons d'effectuer une énorme refonte de ce site. Toutes les URL initiales n'ayant pu être conservées, un gros travail a été fait sur les redirections pour éviter les erreurs 404.

Dans ce cadre, le blog qui est actuellement un sous domaine va passer en interne prochainement, mais en attendant, plusieurs liens se sont retrouvés à pointer vers des pages redirigées en 301.
Dans la mesure ou la cliente à la main sur ce blog, nous avons préféré faire pointer les liens vers les bonnes URL plutôt que de les faire transiter par une 301.

J'ai utilisé pour cela un petit outil simple que m'avait fait découvrir Cheapsitelab. Il s'agit de l'outil http://www.brokenlinkcheck.com/

Très simple à utiliser, il vous permet d'identifier facilement vos liens sortants brisés.
Une fois lancé, il m'a identifié ceci, voir image ci-dessous :

En cliquant sur le petit lien « URL », j'ai facilement identifié les pages ou se trouvaient les liens brisés qui pointaient vers babystock.fr pour pouvoir les corriger sur le blog.

Erreurs 404 sur un site e-commerce.

Sur un site e-commerce, il est très fréquent d'avoir des erreurs 404, car des produits disparaissent au fil du temps. J'ai publié récemment sur le site de l'agence l'infographie d'un arbre de décision pour gérer les ruptures de stock. Celle-ci pouvant vous être utile, je vous la propose à nouveau ci-dessous.

Voir les explications de l'infographie : Gérer les erreurs 404 sur une boutique en ligne

Voir les explications de l'infographie : Gérer les erreurs 404 sur une boutique en ligne

Pour conclure :

Que ce soit pour l'expérience utilisateur ou pour votre référencement, les erreurs 404 sont à éviter. J'espère que cette méthode et ces outils vous seront utiles pour régler le problème sur votre site. Désolé pour ceux à qui je pourris le dimanche car il vont le passer à corriger leurs erreurs...

D'autres astuces pour le référencement de votre site :

(je recevrai un mail quand un article est publié (no spam)

28 thoughts on “Trouver et gérer les erreurs 404 de son site : méthode et outils

  1. Berthommé Charles

    Si vous utilisez WordPress, il y a aussi le plug-in Broken Linck checker qui vérifie régulièrement et vous signale par alerte e-mail d'éventuels erreurs 404.

  2. Busy Women

    Bonjour

    Broken Linck checker je préfère utiliser le site comme tu le suggère que le plugin. J'avais ajouté une fonction spéciale pour ma 404 qui m'envoyait directement un mail, mais j'ai du la supprimer en faisant des modifications :S

  3. Christophe Maggi

    Hello,
    Une technique que j'utilise habituellement sur mes sites (voire ceux de mes clients dans certains cas) est la suivante :
    Les erreurs 404 (et autres) sont redirigées vers une oops_page via la htaccess. La oops_page envoit automatiquement un e-mail en cas de code d'erreur avec toutes les informations nécessaires : qui se connecte quand d'où à quoi avec quoi (je vous laisse imaginer la suite).
    Cette technique permet de voir en temps quasi réel toutes ses erreurs 404 et de les corriger au fur et à mesure. Très pratique pour les blogs ou les sites quotidiennement modifiés.
    De plus, c'est ultra simple à mettre en place, quelques lignes dans le htaccess (qui théoriquement devraient de toutes manières y être) et une page d'erreur que l'on peut réutiliser sur tous les sites.
    Evidemment, si ce n'est pas mis en place dès le début, sur un énorme site internet dont les urls des pages ont changés, vous allez vous retrouver avec 40 000 emails en moins de 10 minutes !
    Cette technique peut aussi s'utiliser dans un CMS pour "voir qui chipote" ou tente une attaque xss !
    Au pire si vous ne voulez pas d'e-mails, vous stockez tout en base de données ou dans un fichier plat mais alors vous perdez l'instantanéité.

  4. Daniel Roch

    Pour ma part, j'utilise un autre outil complémentaire pour les sites WordPress : Broken Link Checker, qui va scanner en continue les liens présents dans les contenus du site pour prévenir de tout lien cassé ou toute redirection inutile. Attention par contre, l'extension est gourmande 😉

  5. Sylvain Auteur de l’article

    @ Daniel
    Oui, voir mon commentaire n°2.
    C'est à cause de la grosse consommation de ressources que je ne l'ai pas mis dans l'article, mais j'avais fait un mode d'emploi pour ceux qui veulent l'utiliser.

    Encore une fois, je pense que les 404 les plus graves sont celles en provenance de l'ex(térieur, et celles-ci, ni brokenlink checker ni brokenlinkcheck ne les détecte.

  6. @Seofred34

    utiliser seofrog en mode liste (ou tout autre test de réponse http automatisé) est aussi intéressant pour la récupération des backlinks cassés pour x raisons :
    1) on identifie les urls qui pointent vers le site et les pages de destinations associées.
    2) on vérifie les réponses http de ces pages sources (eg avec seofrog en mode liste) pour filtrer celles qui répondent encore en 200 (vérifier si possible / au besoin le contenu, lequel peut avoir changé et réserver de mauvaises surprises).
    3) on vérifie ensuite les réponses http des pages de destination de la liste précédente.
    4) on extrait tous les couples backlink en 200 -> pages de destination en 404 /410 /302 ...
    5) ... et on redirige (en 301) ou on recrée au besoin les urls de destination (encore mieux) vers lesquelles pointaient les backlinks les plus intéressants (thematique abordée, trustank...) afin de récupérer un maximum de jus.
    Notez que la plupart des étapes peuvent être automatisées...

  7. Christophe

    Pour compléter cette liste d'outils / méthodes déjà bien remplie, il me semble aussi pertinent de suivre ses logs de près. Notamment les codes HTTP autres que 200 renvoyés à googlebot par exemple.

  8. Cédric

    Bonjour

    Pour la gestion des HTTP 404, j'ai développé un petit outil qui permet de retrouver "automatiquement" (via recherche de similarité 😉 ) les pages en 404 par rapport au sitemap du site concerné (passé en paramètre) ; à chaque URL trouvée il effectue un test à la volée de la page de destination (tant qu'à faire).

    On peut évidemment les indiquer manuellement.

    J'ai été confronté à la reprise en gestion de 3 sites e-commerce avec chacun... entre 200 et 400 URL en HTTP 404 (!) et il m'était impossible de gérer ça manuellement.

    J'ai notamment optimisé mon petit logiciel pour Prestashop (il reconnaît les différents types de pages et redirige donc en conséquence) mais ça fonctionne aussi pour WordPress ou autre, du moment qu'il y a des mots-clés dans les URL 🙂

    Verrai pour le mettre à disposition.

  9. Arafet

    Bonjour,
    Pour les outils d’identification de liens brisés, je vous recommande Xenu.
    Ce petit soft qui vale vraiment de l’or pour les référenceurs.
    D'ailleurs je vous invite à consulter cet article publié sur Seomix: http://www.seomix.fr/xenu/

  10. Sylvain Auteur de l’article

    @ Arafet
    Je l'ai longtemps utilisé. Mais du fait de son ergonomie plutôt bien pensée et son absence de limite (pour la version payante), je suis passé à screamingfrog sans remords.

  11. Jonathan Girouard

    Super article. Ce sont exactement les outils (gratuits) que j'utilise pour identifier et réparer mes liens brisés.

  12. Antoine Brossault

    L'une des manières le plus puissantes pour identifier ses 404 est de faire de l'analyse sur ses log serveur. Avec ce genre d'analyse vous ne pouvez pas rater une seule 404. Vous pouvez aussi vous rapprocher d'outils comme Kibana qui vont vous permettre de visualiser vos logs.

    Antoine

  13. Kalagan

    On conseille toujours de minimiser les erreurs 404 et de faire des redirections 301 vers d'autres pages.

    Qu'en est-il des pages qui ne sont pas vouées à être redirigée ? Je pnse à des pages qui ne sont pas "similaires" à d'autres pages ?

    J'avais l'idée de faire des redirecitons 301 vers une page de type "Page inexistante", avec un code d'erreur 410.
    Qu'en pensez-vous ?

  14. Sylvain Auteur de l’article

    @ Kalagan
    Tout à fait, c'est d'ailleurs ce qui est préconisé dans l'infographie e-commerce.

  15. Caro

    Excellent tuto, pour ma part j'utilise Xenu qui renvoie également les erreurs 404 internes du site... Je vais essayer screaming Frog désormais pour checker mes liens externes. Merci

  16. Fred

    Très bon article, notamment pour la partie ecommerce où ce sujet est encore peu souvent abordé. J'ai publié un billet sur le sujet orienté ecommerce sur mon blog (lien dans mon profil Twitter), notamment avec les URLs de produits désactivés temporairement (produits epuisés, ...). L'onglet "Référencée sur" peut être aussi une piste complémentaire quand un site est victime de NSEO.

  17. marc

    Il est dommage que Google ne traite pas mieux les erreurs interne 404, car il les sanctionne lourdement.
    Venant de transférer le site sur 2 serveurs dédiés nouvelle génération (SSD etc), puisque notre site est constitué de pages statiques, nous l'avons régénéré en totalité. C'etais sans oublier quelques changements très anciens, mais certains nous ont un peu échappé . Du coup, près d'une centaine de milliers de pages supprimées sur plusieurs millions qui étaient des "pages orphelines" , mais dans l'index, se sont retrouvées en erreur 404. Une chute très rapide du trafic a -40% a été constaté.

    Le problème de Google, c'est que lorsque qu'il vérifie des urls, il ne vérifie pas si la source a changée. Du coup, il affiche une erreur de lien "référencé sur" dans Google Webmaster Tools avec une mauvaise source.

    De plus, pour les très gros sites (des millions de pages), il suffit d'une coquille de programme et subitement des centaines de milliers d'erreurs 404 pour être "sanctionné" plusieurs mois vu que l'on ne peut "corriger" que 1000 erreurs par jour. Il faudra plusieurs mois pour corriger la totalité.

  18. Sylvain Auteur de l’article

    @ Marc
    Je suis d'accord sur tout.
    J'ai posé la question à Gary Illyes au SMX France, sa réponse ne reflète pas ce que nous constatons.
    Pour lui, les 404 ne pénalisent pas, je n'y crois pas une seconde.
    Quand au foutoir des sources dans "référencé sur", je m'arrache régulièrement les cheveux avec le manque de mise à jour. Il parait qu'ils vont jeter un coup d’œil, mais à mon avis on peut attendre longtemps.

  19. marc Annuaire Francais

    @Sylvain, je fais tellement de choses que j'avoue que ce n'est pas la première fois que je fait une erreur dans mes liens interne, environs 4 ou 5 grosses coquilles en 3 ans. TOUJOURS le même résultat, une très forte baisse du trafic. D'ailleurs, vu que j'ai 1000 sous domaines donc sites dans webmasters tools, je ne m'amuse pas a regarder chacun tout le temps.
    Aussi, lorsque j'ai une tres grosse baisse de trafic, j'ai désormais ce réflexe de vérifier mes 404, et à chaque fois, je constate mon erreur de programmation. Donc oui, assurément, les liens morts interne (donc 404) sont très pénalisants, vraiment, faut veiller comme le lait sur le feu. Les liens provenant de sites exterieurs ne sont pas pénalisants en effet, ceux en interne SI !!!

    A la décharge de Google, puisque je developpe le moteur premsgo, c'est une vraie usine a gaz que de revérifier la source, ca double les ressources à chaque page crawlé, et franchement, le jeu n'en vaut pas la chandelle à l'échelle de Google. Doubler le crawl pour vérifier si la source n'a pas changée serait beaucoup trop lourd à l'échelle mondiale.

    Le seul "progrès " que pourrait faire Google, c'est a l'attention des gros sites et cette limitation des 1 000 corrections possible par jour, ou ceux qui ont par erreur introduits des numéros de cessions ou autre paramètre erroné dans leurs url, pour tout corriger d'un coup.

    En même temps, la sanction passagère doit subsister, je ne voit pas comment Google pourrait faire autrement, sinon, il pourrait y avoir a son échelle des milliards de 404 a gérer. Et de plus, ceux qui n'entretiennent pas leur site et laissent des liens morts (interne ou sortant*) ne seraient pas sanctionnés.

    * Comme les liens interne, les liens sortant aboutissant a des erreurs 404 sont aussi sanctionné pour le site qui EMET ces liens morts, ce qui semble normal.

  20. Jessica

    Bonsoir,

    Je vous remercie pour cet article. Je viens justement de refaire mon site, et j'ai modifié mon menu, donc des pages de l'ancienne version sont en 404. Or ni le contenu de mon site, ni des sites externes ne pointent vers ces pages "mortes".
    J'ai vérifié sur Google Webmaster Tool et je trouve 38 URLs errors dans "Crawl Errors".
    Je pensais laisser ces pages "mourir", mais à la lecture de votre article que j'ai encore relu, et notamment l'infographie, je ne suis pas certaine de comprendre ce qu'il y a de mieux à faire.
    Je laisse comme cela en marquant l'erreur comme corrigée, ou je redirige en 301.
    En bref, est-ce que le fait qu'aucun lien ne pointe vers ces pages suffit pour ne rien faire?
    Désolée si ma question paraît bête...
    Merci

  21. Sylvain Auteur de l’article

    @ Jessica
    Aucune question n'est bête...

    Si tes anciennes pages étaient bien positionnées et apportaient du trafic, tu as tout intérêt à faire des redirections 301.
    Si ce sont des pages de produits (e-commerce) et qu'elles ne généraient aucune visites directes, tu peux t'en passer.

  22. Jessica

    Je vous remercie pour votre réponse.
    Non, ces pages ne m'apportent aucun trafic. Pour finir, dois-je marquer l'erreur comme corrigée, même si je n'ai fait aucune redirection?

  23. Sylvain Auteur de l’article

    @ Jessica
    Oui tu peux, mais l'impact n'est que dans ton affichage, ça ne corrige rien mais évite de voir ton affichage pollué par des données inutiles. Comme ça, s'il y a de nouvelles erreurs à venir, tu les identifieras plus facilement.

  24. Jessica

    Merci pour ces précisions. Je me doutais, à la lecture de l'article, que le fait de marquer les erreurs comme corrigées, sans faire aucune actions, n'allait rien résoudre. Mais, a contrario, je me demandais si cela aurait une incidence de les déclarer corrigées, sans qu'elles le soient réellement. Maintenant c'est très clair. Merci.

    En effet, mieux vaut que je reparte avec mon affichage propre pour la suite.

  25. Marc Llopis

    Bonjour,
    depuis longtemps j'utilise le plugin broken link Cheker et je suis averti dés qu'un lien cassé est découvert, je l'installe d'officie sur l'ensemble des sites dont j'ai la charge .

  26. pat

    Moi j'ai des "erreurs 404" sur des centaines de pages qui ne sont plus référencées par rien et qui ne figurent plus dans le sitemap depuis longtemps.

    Alors la question est : pourquoi google cherche t'il des pages qui n'existent plus, qui ne sont référencées par rien et qui ne sont plus dans le sitemap (qui a été soumis e traité sans erreur) ?

    Pour moi ca s'appelle un ... bug.

Partagez sur :

Les commentaires sont fermés.