15%

Économisez 15% sur tous les services d'hébergement

Testez vos compétences et obtenez Réduction sur tout plan d'hébergement

Utilisez le code :

Skills
Commencer
10.10.2024

Qu’est-ce qu’une redirection 302 et comment l’utiliser correctement

Une redirection 302 est un code de statut HTTP (302 Found) qui signale aux navigateurs et aux moteurs de recherche qu’une URL a été déplacée temporairement vers un nouvel emplacement. Contrairement à une redirection permanente, l’URL d’origine conserve son statut d’indexation et l’équité de lien accumulée — les moteurs de recherche reçoivent l’instruction explicite de continuer à explorer et à classer l’URL source, et non la destination.

Cette distinction n’est pas cosmétique. Choisir le mauvais type de redirection est l’une des erreurs SEO les plus courantes et les plus coûteuses dans la gestion de l’infrastructure web. Si vous migrez définitivement du contenu mais servez une redirection 302, vous perdez silencieusement des signaux de classement pendant des mois avant de remarquer les dégâts dans Search Console.

Le paysage des redirections HTTP : 302 vs. 301 vs. 307 vs. 308

Avant de plonger dans l’implémentation, il est essentiel de comprendre où se situe la 302 dans la taxonomie plus large des redirections HTTP. De nombreux ingénieurs confondent 302 et 307, et de nombreux propriétaires de sites confondent 302 et 301 — ces deux erreurs ont de réelles conséquences.

CodeNomPermanent ?Changement de méthode autorisé ?Équité de lien transmise ?Cas d’utilisation principal
———————————————-——————–——————–
301Déplacé définitivementOuiOui (GET lors de la redirection)OuiMigration d’URL permanente
302Trouvé (Temporaire)NonOui (GET lors de la redirection)NonRedirection temporaire, usage hérité
307Redirection temporaireNonNon (méthode préservée)NonRedirection temporaire, préservation stricte de la méthode
308Redirection permanenteOuiNon (méthode préservée)OuiRedirection permanente, préservation stricte de la méthode
303Voir ailleursNonOui (toujours GET)NonModèle Post/Redirect/Get
meta refreshN/AVariableN/AFaible/aucuneSolution de repli côté client uniquement

Note architecturale importante : HTTP/1.1 a introduit le code 307 précisément parce que le comportement de la 302 était ambigu — les premiers navigateurs changeaient les requêtes POST en GET lors du suivi d’une redirection 302. Si vous redirigez des soumissions de formulaires ou des points de terminaison API, utilisez 307 (temporaire) ou 308 (permanent), et non 302 ou 301. Pour les redirections de pages standard, la 302 reste le choix correct et largement pris en charge pour les scénarios temporaires.

Quand la redirection 302 est le bon outil

La décision d’utiliser une 302 doit être guidée par une seule question : Ce changement d’URL est-il véritablement temporaire, avec une date de fin définie ? Si la réponse est oui, la 302 est appropriée. Si la réponse est « probablement » ou « indéfiniment », utilisez la 301.

Fenêtres de maintenance planifiées

Lorsqu’une page spécifique ou un site entier est mis hors ligne pour des migrations de bases de données, des mises à niveau de serveurs ou des correctifs d’urgence, une redirection 302 vers une page de notification de maintenance est la réponse correcte. Les moteurs de recherche continueront à conserver l’URL d’origine dans leur index et reprendront l’exploration normale une fois la redirection supprimée.

Une subtilité que de nombreux administrateurs manquent : pour la maintenance à l’échelle du site, associer la 302 à un en-tête HTTP Retry-After sur la page de maintenance donne à Googlebot une indication de ré-exploration, réduisant les tentatives de ré-exploration inutiles pendant la fenêtre d’indisponibilité.

Tests A/B et expériences multivariées

La redirection d’un sous-ensemble de trafic depuis une URL canonique vers une page variante pour l’optimisation du taux de conversion doit utiliser une 302. L’utilisation d’une 301 ici amènerait Google à consolider éventuellement les signaux de classement sur la variante, qui pourrait être abandonnée après la conclusion du test. Des outils comme Google Optimize (désormais obsolète) et les alternatives modernes comme VWO ou Optimizely gèrent cela au niveau JavaScript, mais les redirections 302 côté serveur offrent un contrôle d’exploration plus fiable.

Cas limite : Si votre test A/B dure plus de 90 jours, Googlebot peut commencer à traiter la 302 comme une redirection permanente de facto et commencer à indexer la variante. Auditez régulièrement l’ancienneté des redirections.

Campagnes promotionnelles temporaires

Les pages d’atterrissage saisonnières — ventes flash, inscriptions à des événements, offres à durée limitée — doivent être servies via une 302 depuis l’URL principale. Lorsque la campagne se termine, la suppression de la redirection restaure la page d’origine sans aucun travail de remédiation SEO.

Exemple de flux :

https://example.com/products → 302 → https://example.com/black-friday-sale

Après la campagne, la redirection est supprimée et https://example.com/products reprend son fonctionnement normal, sans perte d’équité de lien.

Routage basé sur la géolocalisation et la langue

Servir des variantes de contenu spécifiques à une région (par exemple, /de, /fr, /us) via des redirections 302 basées sur la géolocalisation IP est un cas d’utilisation légitime, mais il nécessite une implémentation soigneuse. Google indique explicitement que les redirections de géolocalisation ne doivent pas empêcher Googlebot (qui explore depuis des IP américaines) d’accéder au contenu canonique. Assurez-vous toujours que la locale par défaut est accessible sans redirection pour le robot d’exploration.

Combinez les redirections 302 de géolocalisation avec des annotations hreflang dans votre sitemap ou <head> pour donner aux moteurs de recherche une vue complète de votre structure d’URL internationale.

Routage des utilisateurs connectés vs. déconnectés

Les applications web redirigent fréquemment les utilisateurs non authentifiés depuis des ressources protégées vers une page de connexion. Il s’agit par définition d’une 302 — la ressource existe et sera accessible une fois que l’utilisateur se sera authentifié. Servir une 301 ici serait sémantiquement incorrect et pourrait amener les navigateurs à mettre en cache la redirection, rompant ainsi le flux d’authentification pour les utilisateurs récurrents.

Comment implémenter une redirection 302 : toutes les méthodes principales

Apache : configuration .htaccess

Sur les environnements d’hébergement basés sur Apache, le fichier .htaccess dans la racine de votre document est le point de configuration standard. Assurez-vous que mod_rewrite ou mod_alias est activé.

Redirection simple utilisant mod_alias :

Redirect 302 /old-page https://example.com/new-page

Redirection basée sur des modèles utilisant mod_rewrite :

RewriteEngine On
RewriteRule ^old-page/?$ https://example.com/new-page [R=302,L]

Les indicateurs [R=302,L] définissent explicitement le code de réponse et marquent la règle comme la dernière à être traitée. L’omission du code de statut utilise par défaut la valeur 302 dans mod_rewrite d’Apache, mais être explicite évite toute ambiguïté lorsque d’autres ingénieurs lisent la configuration.

Important : Évitez de placer des règles 302 dans un bloc <IfModule mod_rewrite.c> sans vérifier que le module est chargé. Un échec silencieux ici signifie qu’aucune redirection ne se déclenche et qu’aucune erreur n’est enregistrée au niveau de journalisation par défaut.

Nginx : configuration du bloc serveur

Nginx gère les redirections via la directive return, qui est plus performante que rewrite pour les redirections d’URL simples car elle n’invoque pas le moteur regex.

server {
    listen 80;
    server_name example.com;

    location = /old-page {
        return 302 https://example.com/new-page;
    }
}

Pour les redirections temporaires basées sur des modèles :

server {
    listen 443 ssl;
    server_name example.com;

    location ~* ^/promo/(.+)$ {
        return 302 https://example.com/campaigns/$1;
    }
}

Après avoir modifié la configuration, testez toujours la syntaxe avant de recharger :

sudo nginx -t && sudo systemctl reload nginx

Ignorer nginx -t est une cause fréquente de pannes de service — une erreur de syntaxe dans le fichier de configuration empêchera Nginx de se recharger et pourrait provoquer son échec au prochain redémarrage.

Sur un environnement VPS Hosting où vous disposez d’un accès root complet, vous pouvez placer ces directives directement dans /etc/nginx/sites-available/your-site.conf et créer un lien symbolique vers sites-enabled/.

PHP : redirection basée sur les en-têtes

Pour les redirections au niveau de l’application où l’accès à la configuration du serveur est limité, la fonction header() de PHP fournit un mécanisme fiable. Elle doit être appelée avant tout envoi de sortie au navigateur — y compris les espaces blancs avant la balise d’ouverture <?php.

<?php
header("Location: https://example.com/new-page", true, 302);
exit();

L’appel exit() est obligatoire. Sans lui, PHP continue d’exécuter le reste du script, ce qui peut exposer du contenu de page partiel, déclencher des requêtes de base de données inutilement, ou créer des vulnérabilités de sécurité si le script effectue des opérations privilégiées après la redirection.

Note sur les frameworks : Dans Laravel, utilisez return redirect()->to('/new-page', 302);. Dans Symfony, utilisez return new RedirectResponse('/new-page', 302);. Dans WordPress en dehors des plugins, utilisez wp_redirect( $url, 302 ); exit;.

WordPress : gestion via plugin

Pour les sites WordPress, la modification manuelle des fichiers n’est pas toujours pratique ou sûre, en particulier dans les environnements gérés. Le plugin Redirection (par John Godley) est la solution la plus utilisée et fournit un journal complet des redirections, des règles de redirection conditionnelles et des fonctionnalités d’import/export.

Flux de configuration :

  1. Installez et activez le plugin Redirection depuis le dépôt de plugins WordPress.
  2. Accédez à Outils > Redirection.
  3. Sous l’onglet Redirections, cliquez sur Ajouter nouveau.
  4. Saisissez l’URL source (par exemple, /old-page) et l’URL cible (par exemple, https://example.com/new-page).
  5. Définissez le Code HTTP sur 302.
  6. Enregistrez et vérifiez à l’aide du vérificateur de redirection intégré.

Sur un environnement VPS avec cPanel, vous pouvez également gérer les redirections directement via l’interface Redirections de cPanel sous la section Domaines, qui écrit automatiquement les règles .htaccess appropriées.

JavaScript : redirection côté client (à utiliser uniquement en dernier recours)

Les redirections JavaScript ne sont pas des redirections HTTP. Elles s’exécutent après que la page a partiellement chargé dans le navigateur et sont invisibles pour les robots d’exploration côté serveur, sauf si le rendu JavaScript est explicitement pris en charge.

window.location.replace("https://example.com/new-page");

replace() est préférable à assign() pour les scénarios de redirection car il n’ajoute pas l’URL source à l’historique du navigateur, empêchant les utilisateurs de revenir à une page qui ne devrait pas être accessible.

Quand c’est acceptable : Les applications monopages (SPA) côté client où le routage est entièrement géré en JavaScript, ou comme solution de repli pour les environnements où la configuration côté serveur est complètement inaccessible. N’utilisez jamais les redirections JavaScript en remplacement des redirections 302 côté serveur dans des contextes sensibles au SEO.

Mécanique SEO : ce qui se passe réellement quand Googlebot rencontre une 302

Comprendre le comportement du robot d’exploration à un niveau technique permet d’éviter des erreurs de configuration coûteuses.

Lorsque Googlebot rencontre une 302, il :

  1. Enregistre l’URL d’origine comme URL canonique et continue à l’indexer.
  2. Suit la redirection vers l’URL de destination et l’explore également.
  3. Ne consolide pas le PageRank ou les signaux de liens de l’original vers la destination.
  4. Revisite l’URL d’origine selon son calendrier d’exploration normal pour vérifier si la redirection est toujours en place.

La vulnérabilité de détournement par 302 : Au début des années 2000, des acteurs malveillants exploitaient les redirections 302 pour rediriger temporairement des pages à haute autorité vers leur propre contenu, empruntant ainsi efficacement des signaux de classement. Les algorithmes de Google ont depuis été renforcés contre cela, mais cela illustre pourquoi le moteur traite les destinations 302 avec une confiance réduite.

Accumulation de chaînes de redirection : Une 302 qui pointe vers une URL qui elle-même émet une autre redirection (301 ou 302) crée une chaîne de redirection. Chaque saut ajoute de la latence (~100–300 ms par saut selon la géographie du serveur) et dilue le budget d’exploration. Limitez les chaînes à un maximum d’un saut. Utilisez des Serveurs Dédiés pour les sites à fort trafic où la latence des redirections se cumule sur des millions de requêtes quotidiennes.

Interaction avec Cache-Control : Les navigateurs peuvent mettre en cache les réponses 302 si la réponse inclut un en-tête Cache-Control: max-age ou Expires. C’est rarement intentionnel pour les redirections temporaires. Définissez explicitement Cache-Control: no-store sur les réponses 302 pour empêcher les navigateurs de mettre en cache une redirection que vous avez l’intention de supprimer.

location = /promo {
    add_header Cache-Control "no-store";
    return 302 https://example.com/summer-sale;
}

Vérifier que votre redirection 302 fonctionne correctement

Utilisation de curl en ligne de commande

La méthode de vérification la plus fiable pour les administrateurs de serveurs est une requête HTTP directe avec des en-têtes détaillés :

curl -I -L https://example.com/old-page

L’indicateur -I demande uniquement les en-têtes, et -L suit la chaîne de redirection. Recherchez HTTP/2 302 (ou HTTP/1.1 302 Found) dans le premier bloc de réponse, suivi de l’en-tête Location: pointant vers la destination.

Pour inspecter la chaîne complète sans la suivre :

curl -I --max-redirs 0 https://example.com/old-page

Utilisation de Google Search Console

Dans Search Console, l’outil Inspection d’URL montre comment Googlebot a exploré une URL pour la dernière fois, y compris toute redirection rencontrée. Si une 302 est en place depuis une période prolongée et que Google a commencé à la traiter comme permanente (en indexant la destination plutôt que la source), cet outil mettra ce comportement en évidence.

Utilisation de Screaming Frog SEO Spider

Le robot d’exploration de Screaming Frog identifie tous les types de redirections lors d’une exploration complète du site, signale les chaînes de redirection et exporte une carte complète des redirections. C’est l’outil standard pour les audits de redirections avant lancement et la vérification post-migration.

Utilisation des outils de développement du navigateur

Dans Chrome ou Firefox, ouvrez les DevTools (F12), accédez à l’onglet Réseau, désactivez le cache (Ctrl+Shift+R pour un rechargement forcé), et inspectez la première requête. La colonne Statut affichera 302 et l’en-tête de réponse Location affichera l’URL de destination.

Pièges courants et comment les éviter

Utiliser une 302 quand vous voulez dire 301 : L’erreur la plus fréquente. Si une page a été définitivement retirée ou fusionnée dans une autre URL, une 302 empêchera indéfiniment la consolidation de l’équité de lien. Auditez votre inventaire de redirections chaque trimestre.

Oublier de supprimer les 302 temporaires : Définissez des rappels dans votre calendrier lors du déploiement d’une 302 pour une campagne ou une fenêtre de maintenance. Les redirections 302 orphelines s’accumulent avec le temps et créent un gaspillage de budget d’exploration et de la confusion pour les utilisateurs.

Boucles de redirection : A redirige vers B, B redirige vers A. Cela fait planter le navigateur avec une erreur « Trop de redirections » et empêche Googlebot d’explorer l’une ou l’autre URL. Testez toujours les nouvelles redirections avec curl avant de les déployer en production.

Rediriger l’ensemble du site pendant la maintenance au lieu de pages spécifiques : Une 302 à l’échelle du site vers une page de maintenance signale aux moteurs de recherche que chaque URL du site a temporairement déménagé. Pour les scénarios de maintenance, un 503 Service Unavailable avec un en-tête Retry-After est sémantiquement plus correct pour une indisponibilité complète du site.

Appliquer des 302 au contenu paginé : Rediriger /page/2 vers /page/1 lors d’une réorganisation de contenu en utilisant une 302 peut générer des signaux de contenu dupliqué. Utilisez des balises canoniques en complément ou à la place des redirections pour la gestion de la pagination.

Si vous gérez la terminaison SSL en parallèle des redirections, assurez-vous que vos règles de redirection se déclenchent sur le bon écouteur. Une 302 configurée sur le port 80 qui redirige vers une URL HTTPS ne doit pas entrer en conflit avec vos règles de redirection HTTPS vers HTTP. Une configuration correcte des Certificats SSL est un prérequis pour des chaînes de redirection propres sur les sites HTTPS.

Pour les sites hébergés sur un Hébergement Web Mutualisé, la gestion des redirections est généralement effectuée via .htaccess ou l’interface de redirection du panneau de contrôle d’hébergement, car l’accès direct aux fichiers de configuration Nginx ou Apache est généralement restreint.

Matrice de décision : 302 vs. autres types de redirections

Utilisez cette matrice pour sélectionner le type de redirection correct pour votre scénario spécifique :

ScénarioRedirection correcteRaisonnement
———-—————–———–
Migration d’URL permanente (page déplacée définitivement)301Transfère l’équité de lien vers la nouvelle URL
Page de maintenance temporaire302L’URL d’origine reste indexée
Page variante de test A/B302Préserve l’autorité de l’URL canonique
Page d’atterrissage de promotion saisonnière302Supprimée après la fin de la campagne
Redirection de soumission de formulaire POST303Empêche la resoumission du formulaire lors du retour arrière
Redirection temporaire de point de terminaison API (préserver la méthode)307Préservation de la méthode requise
Redirection permanente de point de terminaison API (préserver la méthode)308Préservation de la méthode + permanent
Indisponibilité complète du site503 + Retry-AfterPas une redirection ; signale une indisponibilité temporaire
Routage par géolocalisation302L’URL d’origine reste canonique
Redirection vers un mur de connexion302Ressource accessible après authentification

Liste de contrôle des points clés techniques

  • Confirmez que la redirection est véritablement temporaire avant de choisir la 302 plutôt que la 301.
  • Définissez Cache-Control: no-store sur les réponses 302 pour éviter la mise en cache involontaire par le navigateur.
  • Utilisez curl -I pour vérifier le code de statut correct et l’en-tête Location avant de passer en production.
  • Auditez les chaînes de redirection — limitez-les à un seul saut maximum.
  • Ajoutez des en-têtes Retry-After lors de l’utilisation de la 302 pour les redirections liées à la maintenance.
  • Utilisez 307 à la place de 302 lorsque la méthode HTTP d’origine (POST, PUT, PATCH) doit être préservée.
  • Supprimez les redirections 302 temporaires selon un calendrier défini ; définissez des rappels au moment du déploiement.
  • Surveillez les URL affectées par des redirections dans l’outil d’inspection d’URL de Google Search Console chaque mois.
  • Pour les environnements WordPress, utilisez le plugin Redirection avec la journalisation activée pour suivre le nombre de hits des redirections et identifier les règles orphelines.
  • N’utilisez jamais les redirections JavaScript à la place des redirections 302 côté serveur pour les pages critiques en termes de SEO.

Foire aux questions

Une redirection 302 transmet-elle du PageRank ou de l’équité de lien vers l’URL de destination ?

Non. Google traite la 302 comme un signal temporaire et conserve toute l’autorité de classement sur l’URL d’origine. L’équité de lien n’est transférée que via des redirections permanentes 301 (ou 308).

Combien de temps une redirection 302 peut-elle rester en place avant que Google la traite comme permanente ?

Il n’existe pas de seuil codé en dur, mais John Mueller de Google a indiqué que les redirections en place pendant plusieurs mois peuvent commencer à être traitées comme permanentes. En pratique, toute 302 de plus de 90 jours devrait être examinée et convertie en 301 si le déplacement n’est plus temporaire.

Quelle est la différence entre une redirection 302 et une redirection 307 ?

Les deux sont des redirections temporaires, mais une 302 permet au navigateur de changer la méthode HTTP en GET lors du suivi de la redirection (comportement hérité), tandis qu’une 307 préserve strictement la méthode HTTP d’origine. Utilisez 307 pour les points de terminaison API ou les soumissions de formulaires où la préservation de la méthode est requise.

Une redirection 302 peut-elle provoquer une boucle de redirection, et comment la corriger ?

Oui. Une boucle se produit lorsque l’URL A redirige vers l’URL B, qui redirige vers A (ou via une chaîne qui revient à A). Corrigez-la en auditant vos règles de redirection avec curl --max-redirs 0 sur chaque URL de la chaîne suspectée, puis en supprimant ou en corrigeant la règle conflictuelle. Le rapport de chaîne de redirection de Screaming Frog automatise cette détection sur l’ensemble d’un site.

Dois-je utiliser une redirection 302 ou une balise <meta> refresh pour les redirections temporaires ?

Utilisez toujours une redirection 302 côté serveur. Les balises meta refresh s’exécutent côté client après le début du chargement de la page, ne sont pas traitées de manière fiable par tous les robots d’exploration, et ajoutent une latence de chargement de page inutile. Elles constituent un dernier recours acceptable uniquement lorsque l’accès à la configuration côté serveur est complètement indisponible.

15%

Économisez 15% sur tous les services d'hébergement

Testez vos compétences et obtenez Réduction sur tout plan d'hébergement

Utilisez le code :

Skills
Commencer