< BACK Un panneau usé à la croisée des chemins à l'heure dorée, photographié en pellicule 35mm avec une profondeur de champ réduite

Redirections 301 vs 302 : Laquelle compte vraiment pour le SEO

En 2021, j'ai été appelé pour auditer un site e-commerce de 400 pages qui avait migré six mois auparavant. Le trafic avait baissé de 38% et le client ne comprenait pas pourquoi. Le développeur qui avait effectué la migration avait utilisé des redirections 302 partout, sur chaque ancien URL, parce qu'il « avait vu ça fonctionner avant ». L'autorité de domaine du site était intacte. Les backlinks étaient toujours là. Mais Googlebot traitait les anciennes pages comme temporairement déplacées, tenant l'autorité de lien en suspens, attendant de voir si les URLs originales pourraient revenir. Six mois de ça. C'est une leçon douloureuse à regarder quelqu'un d'autre apprendre.

C'est ça avec les types de redirection : ils paraissent identiques pour un utilisateur qui clique sur un lien. Le navigateur vous mène de A à B de toute façon. Mais pour les moteurs de recherche, la différence est assez significative pour faire échouer une migration si vous vous trompez.

Ce que ces deux codes de redirection signifient réellement

Au niveau du protocole HTTP, un 301 indique au client (navigateur, Googlebot, Bingbot, peu importe) que la ressource a définitivement changé de localisation. Un 302 dit qu'elle a temporairement changé de localisation. C'est tout. C'est toute la différence au niveau de la spécification.permanently moved to a new location. A 302 says it's temporarily moved. That's it. That's the whole difference at the spec level.

Mais c'est dans les implications SEO en aval que ça devient intéressant.

Avec un 301, Google consolide les signaux (backlinks, autorité de la page, priorité d'exploration) de l'ancienne URL vers la nouvelle. Avec un 302, Google est censé maintenir l'URL originale indexée, car le changement est temporaire. En pratique, Google s'est amélioré à ce sujet au fil des années, et la documentation de Google elle-même reconnaît que Googlebot « peut » transférer les signaux des 302 aussi, finalement. Mais « peut » et « finalement » ne sont pas des mots sur lesquels je veux miser le chiffre d'affaires d'un client.Google's own documentation acknowledges that Googlebot "may" transfer signals from 302s too, eventually. But "may" and "eventually" are not words I want to bet a client's revenue on.

La Question du Transfert de Lien

Le transfert d'équité de lien à partir des 301 n'est pas instantané non plus. Il faut généralement plusieurs cycles d'exploration, qui peuvent prendre des jours ou des semaines selon le budget d'exploration et la taille du domaine. Pour une URL de destination toute nouvelle sans autorité existante, cette consolidation est extrêmement importante. J'ai vu des sites retrouver leurs niveaux de trafic antérieurs à la migration dans les 6 à 8 semaines après avoir corrigé les 302 incorrects en 301, simplement en exécutant un fichier .htaccess corrigé et en forçant une nouvelle exploration via Google Search Console..htaccess file and forcing a recrawl through Google Search Console.

Quand Utiliser une Redirection 301

Utilisez un 301 chaque fois que le changement est véritablement permanent. Voici quelques scénarios concrets :

  • Vous migrez de HTTP vers HTTPS (chaque redirection ici doit être un 301)
  • Une page a été supprimée et vous pointez l'URL vers son remplacement pertinent le plus proche
  • Vous avez changé votre structure de permaliens dans WordPress (celui-ci attrape constamment les gens)
  • Vous consolidez deux domaines en un seul après une fusion ou un changement de marque
  • Un produit est arrêté et vous redirigez vers la page de catégorie

Lors d'une migration WooCommerce que j'ai effectuée pour un détaillant de mode fin 2022, il y avait environ 800 anciennes URLs de produits qui devaient être redirigées vers leur nouvelle structure d'URL. Chacune a reçu une redirection 301 via le plugin Redirection avec correspondance regex pour le motif. Cela a pris environ deux heures à mettre en place proprement. L'alternative, le faire manuellement ou utiliser des 302 « juste pour tester », leur aurait coûté des mois de temps de récupération.Redirection plugin with regex matching for the pattern. Took about two hours to set up cleanly. The alternative, doing it manually or using 302s "just to test", would have cost them months of recovery time.

Le piège de la migration HTTPS

Celui-ci spécifiquement. Je vois toujours des développeurs faire des migrations HTTP vers HTTPS et utiliser des 302 parce qu'ils veulent « tester le SSL d'abord ». Ne le faites pas. Si le certificat est installé et fonctionne, passez directement à des 301. L'approche 302 sur les migrations HTTPS est l'une des causes les plus courantes des redoutables drapeaux « contenu dupliqué » dans Google Search Console, car Googlebot peut indexer les deux versions pendant une période.

Quand utiliser une redirection 302

Authentiquement moins de cas que la plupart des gens le pensent. Une 302 est appropriée quand :

  1. Vous testez une page en A/B et vous voulez que l'URL originale conserve ses signaux de classement pendant le test
  2. Vous lancez une campagne promotionnelle temporaire (une page d'atterrissage à court terme qui remplace votre page d'accueil pour le Black Friday, par exemple)
  3. Vous effectuez une maintenance et routez les utilisateurs vers une page de statut pendant quelques heures
  4. Vous devez rediriger les utilisateurs géographiquement vers des versions localisées d'une page sans le rendre permanent

Le dernier point mérite de s'y attarder. Si vous redirigez les visiteurs du Royaume-Uni vers /en-gb/ et les visiteurs des États-Unis vers /en-us/, ce devraient être des 302, car aucun groupe d'utilisateurs ne « possède » l'URL canonique. Google gère le ciblage géographique séparément via hreflang de toute façon, mais la 302 signale que l'URL originale reste la destination canonique./en-gb/ and US visitors to /en-us/, those should be 302s, because no single user group "owns" the canonical URL. Google handles geo-targeting separately through hreflang anyway, but the 302 signals that the original URL is still the canonical destination.

Seahawk avait un client SaaS l'année dernière qui lançait une promotion d'essai gratuit de 30 jours où la page d'accueil était temporairement redirigée vers une landing page /free-trial/. Bon choix : 302. Ils voulaient que la page d'accueil retrouve ses classements dès la fin de la promotion. S'ils avaient utilisé un 301, les signaux de la page d'accueil auraient commencé à se consolider sur /free-trial/, qui allait disparaître entièrement après la campagne./free-trial/ landing page. Correct call: 302. They wanted the original homepage to reclaim its rankings the moment the promotion ended. If they'd used a 301, the homepage's signals would have started consolidating onto /free-trial/, which was going to disappear entirely after the campaign.

Le mythe « Google traite les 302 comme des 301 »

Vous avez probablement lu ça quelque part. Et il y a une parcelle de vérité là-dedans. Google peut dans certaines situations traiter un 302 de longue date de la même manière qu'un 301, surtout si l'URL de destination reste cohérente sur une longue période. John Mueller l'a mentionné lors de diverses sessions de permanence Google Search Central.can in certain situations treat a long-standing 302 similarly to a 301, especially if the destination URL is consistently the same over a long time period. John Mueller has mentioned this in various Google Search Central office hours sessions.

Mais voilà : c'est Google qui est tolérant face aux erreurs de développeurs, pas une fonctionnalité sur laquelle vous devriez compter. Bing ne se comporte pas de la même façon. Et compter sur la discrétion de Google pour quelque chose d'aussi important qu'une migration de domaine, c'est du travail bâclé. Utilisez l'outil approprié.

Comment vérifier le type de redirection que vous avez

Si vous n'êtes pas sûr de ce qui est actuellement en direct sur un site, il existe quelques moyens rapides de vérifier.

Le plus rapide : ouvrez votre terminal et lancez curl -I https://example.com/old-page . Cherchez HTTP/1.1 301 ou HTTP/1.1 302 dans les en-têtes de réponse. Cela prend cinq secondes.curl -I https://example.com/old-page . Look for the HTTP/1.1 301 or HTTP/1.1 302 in the response headers. Takes five seconds.

Pour un audit plus approfondie sur des centaines d'URL, Screaming Frog SEO Spider est ce que j'utilise. Exportez votre crawl, filtrez par code de réponse 3xx, et vous pouvez voir chaque redirection du site et son type. Je fais cela en standard lors de chaque audit de site chez Seahawk avant de toucher à quoi que ce soit. La version gratuite gère jusqu'à 500 URL ce qui couvre beaucoup de petits sites.Screaming Frog SEO Spider is what I use. Export your crawl, filter by response code 3xx, and you can see every redirect on the site and what type it is. I run this as standard on every site audit at Seahawk before we touch anything. The free version handles up to 500 URLs which covers a lot of smaller sites.

Pour WordPress spécifiquement, le plugin Redirection dispose d'un journal intégré qui vous montre chaque redirection en temps réel, y compris le code de réponse. Genuinely utile pour attraper quoi que ce soit d'étrange après une migration.

Chaînes de redirection : le problème dont personne ne parle assez

Un 301 pointant vers un autre 301 pointant vers l'URL finale. C'est une chaîne de redirections, et ça arrive tout le temps sur les sites qui ont connu plusieurs migrations ou changements de CMS. Chaque étape de la chaîne dilue légèrement le transfert d'équité de lien et consomme du budget de crawl.

La règle que je suis : si Screaming Frog affiche une chaîne de plus d'une redirection, je la corrige. Je pointe l'URL originale directement vers la destination finale. Cela s'applique aux chaînes 301 et 302.

Implémenter les redirections correctement

Dépend de votre stack, mais les scénarios les plus courants :

Apache (.htaccess) : `` Redirect 301 /old-page https://www.example.com/new-page `` `` Redirect 301 /old-page https://www.example.com/new-page ``

Nginx : `` return 301 https://www.example.com/new-page; `` `` return 301 https://www.example.com/new-page; ``

WordPress (via le plugin Redirection) : définissez le champ de code HTTP à 301 explicitement. Le plugin par défaut à 301 mais je l'ai vu changé par d'autres plugins ou imports, donc vérifiez toujours. Set the HTTP code field to 301 explicitly. The plugin defaults to 301 but I've seen it get changed by other plugins or imports, so always double-check.

Cloudflare Page Rules : vous pouvez définir des règles de redirection au niveau du CDN avec des codes de statut 301 ou 302 explicites. Utile pour les redirections au niveau du domaine avant même que la requête ne touche votre serveur. You can set redirect rules at the CDN level with explicit 301 or 302 status codes. Useful for domain-wide redirects before the request even hits your server.

Un conseil à ajouter : après avoir implémenté une redirection, vérifiez-la avec curl ou l'outil HTTP Status Checker. Ne cliquez pas simplement sur le lien dans un navigateur. Les navigateurs mettent en cache les redirections de manière agressive, et vous croirez que ça fonctionne alors que le serveur retourne en réalité quelque chose de différent pour les visiteurs pour la première fois.curl or the HTTP Status Checker tool. Don't just click the link in a browser. Browsers cache redirects aggressively, and you'll think it's working when the server is actually returning something different for first-time visitors.

Réponse courte : une 301 consolidera, au fil du temps, la valeur de lien vers l'URL de destination. Mais les backlinks eux-mêmes ne disparaissent pas et ne se mettent pas à jour automatiquement. Ils pointent toujours vers l'ancienne URL. La redirection indique à Google d'associer la valeur de ces liens à la nouvelle destination.

C'est pourquoi changer votre structure de permaliens sans mettre en place des 301 est catastrophique. Chaque backlink que vous avez jamais obtenu pointant vers /blog/post-name/ devient sans valeur si cette URL retourne maintenant un 404 au lieu de rediriger vers /articles/post-name/./blog/post-name/ becomes worthless if that URL now 404s instead of redirecting to /articles/post-name/.

J'ai audité un site de contenu en 2020 qui avait changé de thème WordPress, et le nouveau thème avait une structure URL différente intégrée. Aucune redirection n'avait été mise en place. Ils avaient perdu le capital de lien sur environ 200 articles du jour au lendemain. Selon les données d'Ahrefs, même une redirection 301 bien implémentée conserve environ 90-99% du capital de lien, bien que Google n'ait pas publié de chiffre officiel. Le point clé : même une 301 imparfaite surpasse largement un 404.Ahrefs data, even a well-implemented 301 redirect retains somewhere around 90-99% of link equity, though Google hasn't published an official figure. The point is: even an imperfect 301 beats a 404 by an enormous margin.

FAQ

Une redirection 301 transmet-elle 100% du capital de lien ?

Non, et c'est probablement le cas depuis le début. Google a historiquement suggéré qu'il y a une petite perte de PageRank à travers n'importe quelle redirection. Le chiffre ancien cité était environ 15% de perte, bien que Google ait depuis nuancé ce propos. Ahrefs et Moz estiment tous les deux que la perte est minimale pour une seule 301 propre. Ce qui vous tue, ce sont les chaînes, les boucles, ou l'utilisation d'un type de redirection complètement erroné.

Puis-je changer une redirection 301 pour pointer ailleurs plus tard ?

Oui. Une 301 est une instruction côté serveur, pas quelque chose de gravé de façon permanente dans l'index de Google. Vous pouvez mettre à jour la destination à tout moment. Google détectera la nouvelle destination lors de son prochain crawl. Le « permanent » dans 301 signifie intention permanente au moment du changement, pas que c'est techniquement immuable.

Combien de temps Google met-il pour traiter une redirection 301 ?

Pour les sites à forte autorité avec un crawl fréquent, parfois en un ou deux jours. Pour les petits sites, cela peut prendre plusieurs semaines. Soumettre les nouvelles URL via l'outil Inspection d'URL de Google Search Console et demander l'indexation accélère les choses de manière significative. Je le fais systématiquement à chaque migration.

Dois-je rediriger chaque ancienne URL ou seulement les importantes ?

Chaque URL qui a des backlinks, du trafic indexé, ou des liens internes pointant vers elle devrait recevoir une vraie redirection 301. Pour les pages sans aucun lien et sans trafic indexé, une 404 est en fait acceptable. Ne créez pas de surcharge de redirections en redirigeant des URLs véritablement mortes qui n'ont jamais eu de valeur.

Et les redirects JavaScript ? Sont-elles traitées de la même façon ?

Non. Les redirects JavaScript (utilisant window.location) sont traitées beaucoup plus lentement par Googlebot parce qu'elles nécessitent un rendu JavaScript. Elles sont aussi inconsistantes avec les autres crawlers. Pour tout ce qui touche au SEO, utilisez les redirects côté serveur. Toujours.window.location) are processed much more slowly by Googlebot because they require JavaScript rendering. They're also inconsistent across other crawlers. For anything SEO-sensitive, use server-side redirects. Always.

---

Le type de redirection est une de ces choses qui semble triviale jusqu'à ce qu'elle ne l'est plus. J'ai passé des heures au téléphone à expliquer à des clients pourquoi leur trafic a chuté six mois après une migration, en remontant jusqu'à la décision d'un développeur d'utiliser des 302 parce que c'était « plus sûr ». Ce n'est pas plus sûr. Utilisez le bon type, gardez les chaînes courtes, et vérifiez avec autre chose que votre navigateur.

< BACK