Boucles de redirection

Ce que sont les boucles de redirection, pourquoi elles rendent un site inaccessible aux utilisateurs comme aux robots d’exploration, leurs causes courantes (conflits HTTPS ou de mode SSL, www contre non-www, extensions contre règles serveur, slash final) et comment les diagnostiquer puis les corriger selon leur cause.

Première publication : 2 juil. 2026 · Dernière mise à jour : 21 août 2026 · Advanced
Langues
1 indice probant sur cette page

Une boucle de redirection est une suite de redirections qui revient sur elle-même — A → B → A, ou un cycle plus long — sans qu’aucune page ne renvoie jamais un statut 200. Les navigateurs l’affichent sous la forme ERR_TOO_MANY_REDIRECTS ; dans Google Search Console, elle fait partie des quatre causes documentées de l’état « Erreur de redirection ». C’est d’abord une panne du site, car les visiteurs sont bloqués, puis un problème SEO, car Google ne peut pas indexer une ressource inaccessible. Elle nuit aux utilisateurs, aux robots d’exploration et à votre propre serveur. Une cause bien documentée est un désaccord de mode HTTPS/SSL entre un CDN et l’origine, par exemple Cloudflare en mode Flexible alors que l’origine impose HTTPS. D’autres causes courantes sont des règles www et non-www opposées, un conflit entre une extension et le serveur, ou une erreur de slash final. Aucune cause n’est universellement la plus fréquente. Augmenter la limite de sauts ne corrige jamais un cycle : il faut rompre la boucle, faire renvoyer à l’URL finale la bonne réponse sans redirection et mettre à jour les liens internes.

TL;DR — Une boucle de redirection est un cycle (A → B → A, ou plus long) qui ne renvoie jamais de 200. Une chaîne est lente mais aboutit ; une boucle est rompue, si bien qu’augmenter la limite de sauts ne la corrige jamais. Le navigateur affiche ERR_TOO_MANY_REDIRECTS et Search Console la classe parmi quatre causes documentées d’« Erreur de redirection ». Elle nuit aux utilisateurs, aux robots d’exploration et à votre serveur. Une cause bien documentée est un désaccord de mode HTTPS/SSL entre le CDN ou proxy et l’origine ; d’autres incluent des règles www/non-www opposées, un conflit entre extension et serveur, ou un bug de slash final. Aucune cause n’est universellement la plus fréquente. Le correctif dépend toujours de la cause.

Une boucle est un cycle, pas une longue chaîne

Sa propriété essentielle est le routage cyclique, et non un nombre précis de sauts. Evidence for this claim Primary standard or official documentation supporting the adjacent article claim. Scope: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confidence: high · Verified: RFC 9110: Redirection Le libellé de Search Console décrit le chemin de redirection en échec, pas la couche de configuration qui l’a créé. Evidence for this claim Primary standard or official documentation supporting the adjacent article claim. Scope: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confidence: high · Verified: Google: Page indexing report Une URL répétée est un indice fort, mais pas une preuve automatique : l’authentification, le consentement, la langue, les cookies ou les en-têtes peuvent varier. Confirmez le cycle dans des conditions matériellement équivalentes — même session, mêmes cookies, même langue — avant de modifier une règle.

Cette distinction explique tout le reste. Dans mon guide Ahrefs sur les redirections, je définis les boucles comme des suites infinies qui se produisent lorsqu’une URL se redirige vers elle-même ou qu’une URL de la chaîne renvoie vers une URL déjà rencontrée.

Une chaîne de redirections (A → B → C → D → destination) est un chemin simplement trop long. Elle finit par atteindre une page qui renvoie 200. Elle est lente et mérite d’être raccourcie, mais elle aboutit.

Une boucle est un cercle : A → B → A. Elle n’atteint jamais un 200, quel que soit le nombre de sauts suivis. « Augmenter la limite de redirections » ne constitue donc pas un correctif. La boucle ne casse pas parce que le navigateur manque de patience, mais parce qu’aucune destination n’existe. Il faut rompre le cycle.

Comment une boucle se manifeste

Dans le navigateur. Chrome affiche ERR_TOO_MANY_REDIRECTS. Firefox indique « La page n’est pas redirigée correctement » ; Safari et Edge affichent leur propre message signalant un trop grand nombre de redirections. La formulation change, pas la cause.

Dans Google Search Console. Une boucle fait partie des quatre causes documentées de l’état « Erreur de redirection » dans le rapport Indexation des pages. Les trois autres sont une chaîne trop longue, une URL de redirection qui dépasse la longueur maximale et une URL incorrecte ou vide dans la chaîne. Le rapport reflète la dernière exploration de Google, pas un verdict permanent en temps réel. Après correction, contrôlez de nouveau avec l’Inspection de l’URL. L’article consacré à l’état « Erreur de redirection » couvre les quatre causes ; celui-ci traite précisément des boucles.

Pour les robots et dans les journaux. Un robot pris dans une boucle continue à demander des URL qui le redirigent. Les robots bien conçus la détectent et s’arrêtent ; les autres peuvent provoquer le problème de charge décrit ci-dessous.

Trois parties subissent les boucles

Je présente les boucles comme un problème à trois faces, car elles ne coûtent pas seulement des positions : elles touchent les utilisateurs, les robots et votre infrastructure.

  • Utilisateurs. La ressource visée devient inaccessible et le navigateur affiche « trop de redirections ». C’est avant tout une panne du site.
  • Robots et moteurs de recherche. Ils sont piégés et gaspillent du budget d’exploration. Rien de l’autre côté du cycle ne peut être exploré, indexé ou classé. Ce n’est pas une pénalité : la page est simplement inaccessible et Google n’atteint aucune destination où consolider les signaux.
  • Votre serveur. Les boucles gaspillent des ressources. Certains robots abandonnent, d’autres répètent les requêtes et créent une charge inutile. Une panne grave, voire un effet comparable à un DDoS auto-infligé, dépend du trafic, de la mise en cache, du repli des clients, de la capacité du serveur et de la limitation de débit. Ce n’est pas inhérent à toute boucle, mais le risque est réel sur un site très fréquenté ou fortement exploré sans protection.

Causes courantes

Il n’existe pas de cause universelle. Dans la pratique, une boucle provient de règles de canonicalisation contradictoires, réparties entre des couches qui ne partagent pas le même état. Deux systèmes pensent chacun connaître la bonne URL, mais se renvoient la requête. Les schémas à contrôler dépendent de votre pile technique, pas d’un classement fixe de fréquence.

Conflit HTTP/HTTPS entre le CDN et l’origine

Avec un proxy ou CDN comme Cloudflare, la connexion comporte deux segments : navigateur → CDN, puis CDN → origine. S’ils ne s’accordent pas sur HTTP ou HTTPS, la boucle se forme à cette frontière. La documentation de Cloudflare cite un mode de chiffrement SSL/TLS mal configuré, des réglages contradictoires dans Edge Certificates ou une règle de redirection erronée. Ces causes sont courantes dans Cloudflare, sans être nécessairement les plus fréquentes partout.

  • Mode Flexible et origine qui impose HTTPS. En mode SSL Flexible, Cloudflare communique avec l’origine en HTTP, même si le visiteur utilise HTTPS. Si l’origine impose aussi HTTP → HTTPS via .htaccess, nginx ou une extension, le cycle se répète. Correctif : choisissez Full ou Full (strict) pour que le segment CDN→origine utilise aussi HTTPS. Full (strict) exige un certificat valide sur l’origine.
  • Mode Full/Full (strict) et origine qui redirige HTTPS → HTTP. Une ancienne règle peut encore renvoyer HTTPS vers HTTP. Correctif : supprimez-la ; l’origine doit servir HTTPS directement.
  • « Always Use HTTPS » en périphérie plus redirection HTTPS à l’origine. Imposer HTTPS à deux endroits, ou opposer HSTS à une redirection, peut produire la même boucle. Correctif : imposez HTTPS à un seul niveau.
  • Règle de redirection mal configurée, par exemple une Page Rule, Bulk Redirect ou Transform Rule qui ramène une URL vers la forme qu’elle vient de quitter. Correctif : cherchez une règle périphérique qui contredit la canonicalisation de l’origine.

Règles www et non-www qui se renvoient mutuellement

Choisissez un seul hôte canonique : www.example.com ou example.com. Une boucle apparaît si une règle envoie example.com vers www.example.com tandis qu’une autre, souvent dans une extension, le CDN ou WordPress, renvoie www.example.com vers example.com. Correctif : laissez une seule règle, à un seul endroit, imposer le sens choisi.

Conflit entre une extension ou le CDN et le serveur d’origine

La boucle vit souvent entre les couches. Une extension WordPress qui impose SSL, ou les champs d’adresse du site, peut contredire une réécriture .htaccess ou une règle du CDN. Chaque couche paraît correcte isolément, mais elles ne partagent pas leur état. Un fichier .htaccess apparemment correct n’exclut donc pas un conflit ailleurs. Correctif : trouvez les deux règles qui accomplissent la même tâche à des endroits différents et supprimez-en une.

Conflit entre URL avec et sans slash final

Une règle qui ajoute un slash (/page/page/) peut heurter une règle qui le retire (/page//page). Correctif : choisissez une convention et ne redirigez que la forme incorrecte vers la bonne, jamais vers une forme qui renvoie en arrière.

Empilement de règles laissées par une migration

Les migrations créent souvent des boucles : passage de HTTP à HTTPS, consolidation de www, changement de domaine ou de CMS. Une nouvelle couche ajoutée sur d’anciennes règles non nettoyées peut les faire pointer l’une vers l’autre. Si la boucle semble surgir sans raison, cherchez les règles laissées par une migration.

Diagnostiquer une boucle

Il faut observer la boucle, pas la deviner.

Tracez-la en ligne de commande avec une vraie requête GET, pas avec HEAD seul. Envoyez le même type de requête qu’un visiteur ou un robot, puis relevez chaque code d’état et en-tête Location afin de voir tous les sauts :

# GET is curl's default method (no -I); -L follows redirects; --max-redirs caps how far
curl -sL --max-redirs 10 -D - -o /dev/null https://www.example.com/ | grep -i -E '^(HTTP/|location:)'
# A loop shows the same two (or few) URLs alternating and never a 200 —
# curl stops with "Maximum (10) redirects followed".

Pour afficher l’URL effective à chaque arrêt :

curl -sL --max-redirs 10 -o /dev/null -w '%{http_code} %{url_effective}\n' https://www.example.com/

Comparez ensuite avec une trace HEAD (curl -sIL --max-redirs 10 ...) comme contrôle secondaire, jamais comme preuve principale. HEAD et GET sont des méthodes différentes ; l’application peut les traiter différemment et HEAD manquer une redirection présente sur la vraie requête. Ne rejouez jamais une méthode dangereuse, telle qu’un POST de formulaire, uniquement pour tracer une boucle.

Si le même couple hôte/protocole se répète sans 200, vous avez trouvé la boucle. Les URL alternées révèlent la règle en conflit : protocole pour HTTP/HTTPS, hôte pour www/non-www, chemin pour le slash final. Attribuez ensuite chaque saut à sa couche — navigateur/HSTS, périphérie/TLS, proxy inverse, origine, application/CMS ou session/authentification — car deux couches sans état partagé s’opposent.

Autres pistes :

  • Outils de développement du navigateur → Réseau. Observez l’empilement des requêtes et leurs en-têtes Location avant l’erreur.
  • Test avec et sans CDN. Si l’origine jointe directement, sans Cloudflare, ne boucle pas, le conflit se situe entre le CDN et l’origine, probablement dans le mode SSL.
  • Google Search Console. L’Inspection de l’URL et la catégorie « Erreur de redirection » indiquent les URL problématiques. Les outils d’inspection ne suivent pas les redirections : le résultat décrit l’URL exacte testée, pas l’autre côté de la boucle.
  • Robot d’exploration à l’échelle du site, comme Ahrefs Site Audit ou Screaming Frog. Dans Ahrefs : explorez le site, ouvrez Redirects → Issues, cherchez « Redirect loop » puis affichez les URL touchées.

Corriger une boucle

Une fois la cause connue, demandez-vous si la dernière URL avant la fermeture du cycle est la destination finale souhaitée :

  • Si oui : supprimez la redirection depuis cette URL finale et vérifiez que la ressource est accessible avec la bonne réponse sans redirection, généralement 200. Le statut dépend toutefois de la ressource : une page supprimée doit renvoyer son statut réel, pas un faux 200.
  • Sinon : faites pointer la redirection cyclique directement vers la véritable destination finale.

Dans les deux cas, remplacez les liens internes vers une URL redirigée par des liens directs vers la destination finale.

Correctifs propres aux plateformes :

  • Cloudflare : passez de Flexible à Full ou Full (strict) pour aligner CDN→origine sur navigateur→CDN. N’imposez pas HTTPS à la fois en périphérie (« Always Use HTTPS ») et à l’origine. Full (strict) exige un certificat valide.
  • WordPress : dans Réglages → Général, les adresses de WordPress et du site doivent correspondre au protocole et à l’hôte canoniques. Supprimez toute extension SSL ou tout extrait FORCE_SSL_ADMIN/redirection dans wp-config.php ou le thème qui double la règle du serveur ou du CDN. Un .htaccess corrompu peut aussi boucler ; régénérez-le depuis Réglages → Permaliens.
  • Apache (.htaccess) : les conditions de vos RewriteRule HTTPS et www doivent exclure la forme déjà correcte.
  • nginx : un return 301 de canonicalisation HTTPS ou d’hôte ne doit pas s’appliquer à une requête déjà canonique.

Limites de sauts : le faux correctif

Le message « trop de redirections » incite parfois à relever max-redirs ou la limite d’une extension. Cela ne corrige jamais une vraie boucle. Contrairement à une longue chaîne, le problème n’est pas le nombre de sauts : le cycle ne se termine pas. Il faut le rompre.

Remarque sur Bing

Google nomme formellement la « boucle de redirection » parmi les quatre causes d’« Erreur de redirection ». Les conseils publics de Bing sont plus généraux : employer des 301 pour les déplacements permanents et éviter les chaînes inutiles. Cette recherche n’a pas trouvé de page Bing portant précisément ce titre, ce qui est une lacune de la recherche et non la preuve que cette documentation n’existe pas. Le cadre des quatre causes est donc propre à Google.

Concepts associés

La chaîne de redirections est le problème voisin : lorsqu’elle est trop longue, elle représente une autre des quatre causes, mais finit tout de même par aboutir. Une redirection 301 est permanente ; une 302 est temporaire. L’état Erreur de redirection de Search Console est le rapport dans lequel une boucle apparaît le plus souvent pour le SEO.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.