Redirections géographiques : comment rediriger les visiteurs par pays (compatible SEO)

5 octobre 2023
10 mins de lecture
Redirections géographiques : comment rediriger les visiteurs par pays (compatible SEO)

Réponse directe

Une redirection géographique (redirection par pays) envoie les visiteurs vers une URL différente en fonction du pays d’où semble provenir leur adresse IP. Vous pouvez en configurer une dans votre CDN ou chez votre hébergeur, par exemple une règle de redirection Cloudflare basée sur ip.src.country, une ligne _redirects de Netlify avec Country=de, ou quelques lignes de middleware. Pour le SEO, Google déconseille de forcer les visiteurs (et Googlebot) vers une version basée sur l’IP : gardez chaque version par pays sur sa propre URL, reliez-les avec hreflang et suggérez la version locale avec une bannière à la place. Si vous redirigez quand même par IP, utilisez une 302, seulement sur la page d’entrée, et ne redirigez jamais loin d’une URL par pays qu’une personne a ouverte directement. Les domaines par pays que vous possédez (mybrand.de) sont un cas différent : une simple 301 vers la section correspondante (mybrand.com/de/) est sûre.

« Rediriger les visiteurs par pays » peut désigner deux choses très différentes. La première est une redirection fixe : tout ce qui se trouve sur mybrand.de va vers mybrand.com/de/, pour chaque visiteur. La seconde est une redirection géographique : la même URL envoie un visiteur en Allemagne vers /de/ et un visiteur en France vers /fr/, en fonction de son adresse IP. La première est une redirection normale que les moteurs de recherche gèrent proprement. La seconde modifie ce que les personnes (et les robots d’indexation) voient selon l’endroit d’où ils semblent se connecter, et c’est là que la plupart des problèmes de SEO apparaissent.

Ce guide couvre les deux cas : ce que Google dit au sujet de la redirection basée sur l’IP, les règles qui permettent de garder une redirection géographique sûre, comment en configurer une sur Cloudflare, Netlify, Vercel et Nginx, comment afficher du contenu local sans redirection du tout, et comment pointer vos domaines par pays vers la bonne section.

Redirection géographique, redirection par pays, redirection IP : ce que signifient les termes#

  • Redirection géographique / redirection basée sur l’IP : le serveur (ou le CDN) recherche l’adresse IP du visiteur dans une base de données de géolocalisation, obtient un code pays comme DE ou FR, puis redirige vers une URL choisie pour ce pays.
  • Redirection linguistique : la même idée, mais basée sur l’en-tête Accept-Language du navigateur au lieu de l’adresse IP.
  • Redirection de domaine par pays : un ccTLD que vous possédez (mybrand.de, mybrand.fr) redirige vers une destination fixe, généralement la section correspondante de votre site principal. Cela ne tient pas compte du visiteur.
Three ways to send visitors to their country version: a fixed 301 from a country domain to a section, a 302 geo redirect by IP, and a suggestion banner that lets the visitor choose

La redirection basée sur l’IP est-elle mauvaise pour le SEO ?#

Cela peut l’être, car les moteurs de recherche ne crawlent pas depuis les pays de vos visiteurs. La documentation de Google est claire à ce sujet :

  • Googlebot parcourt le web avec des adresses IP situées hors des États-Unis, en plus d’adresses IP basées aux États-Unis[1], et il envoie des requêtes sans en-tête Accept-Language. Une redirection qui choisit la version selon l’IP ou la langue peut n’afficher au robot qu’une seule version.
  • Dans son guide multi-régional, Google recommande d’éviter de rediriger automatiquement les utilisateurs d’une version linguistique vers une autre[2], et de ne pas utiliser l’analyse d’IP pour adapter votre contenu, car la localisation de l’IP est « difficile et généralement peu fiable ».
  • Google recommande une URL distincte pour chaque version linguistique ou nationale, des liens entre les versions, ainsi que des annotations hreflang indiquant à Google quelle URL correspond à quelle locale[3].

Ainsi, une redirection géolocalisée n’est pas une pénalité en soi, mais une redirection mal gérée peut masquer des pages à Google, envoyer les voyageurs et les utilisateurs de VPN vers la mauvaise boutique, et piéger les personnes qui souhaitent une autre version. Pour l’effet général des redirections sur le classement, consultez notre guide sur les types de redirection et leurs effets SEO.

Si vous redirigez quand même par pays : 6 règles pour rester compatible SEO#

  • Utilisez une redirection temporaire (302 ou 307), pas une 301. La destination dépend du visiteur, donc le déplacement n’est pas permanent, et les navigateurs mettent en cache les 301. Notre guide 301 vs 302 explique la différence.
  • Redirigez uniquement le point d’entrée, généralement la page d’accueil. Ne redirigez jamais quelqu’un loin d’une URL de pays qu’il a ouverte directement, comme un lien vers mybrand.com/fr/ partagé avec un lecteur en Allemagne.
  • Rendez chaque version nationale accessible et liée. Ajoutez un sélecteur de pays ou de langue visible sur chaque page.
  • Ajoutez hreflang à chaque version, ainsi qu’un x-default pour la page qui sert les visiteurs en dehors de vos pays cibles.
  • Mémorisez le choix du visiteur dans un cookie et respectez-le lors de la prochaine visite, même si l’IP indique autre chose.
  • Traitez Googlebot comme n’importe quel autre visiteur depuis son emplacement. Fournir aux robots d’exploration un contenu différent de celui des utilisateurs est du cloaking.

Comment modifier le contenu d’un site web selon le pays sans rediriger#

Souvent, la meilleure réponse à « comment modifier le contenu d’un site web en fonction du pays du visiteur » est de ne pas rediriger du tout :

  • Bannière de suggestion : chargez la page demandée par le visiteur et affichez « Il semble que vous soyez en Allemagne. Aller sur le site allemand ? » avec un bouton et une option « Rester ici ». Cela suit les խորհուրդ de Google d’afficher vos autres versions et de laisser les utilisateurs changer, et cela ne masque jamais une URL aux robots d’exploration.
  • Petits détails locaux sur la même URL : affichez les prix dans la devise locale ou une note d’expédition locale, tandis que le contenu principal reste le même pour tout le monde. Google appelle les pages qui changent selon la locale « locale-adaptive » et avertit qu’il peut ne pas voir toutes les variations ; gardez donc sur leur propre URL tout ce que vous voulez indexer.
  • URLs distinctes par pays avec hreflang : /de/, /fr/ ou de.mybrand.com, chacune indexable séparément, afin que la recherche envoie les internautes directement vers leur version et qu’aucune redirection ne soit nécessaire.

Comment configurer une redirection par pays#

Ces exemples redirigent uniquement la page d’accueil, avec un 302. Adaptez les codes pays (ISO 3166-1 alpha-2, tels que DE, FR, GB) et les chemins à votre site. Les faits ont été vérifiés dans la documentation de chaque fournisseur en octobre 2026.

Cloudflare : une règle de redirection selon le pays du visiteur#

Si votre domaine est proxifié via Cloudflare, créez une règle de redirection (une seule redirection) avec une expression de filtre personnalisée et une cible dynamique. Cloudflare expose le pays du visiteur sous la forme ip.src.country. L’exemple propre à Cloudflare[4] envoie les visiteurs de GB et FR depuis la page d’accueil vers un sous-domaine par pays :

text# Lorsque les requêtes entrantes correspondent (expression de filtre personnalisée)
(ip.src.country eq "GB" or ip.src.country eq "FR") and http.request.uri.path eq "/"

# Puis : redirection dynamique, expression de l'URL cible
lower(concat("https://", ip.src.country, ".example.com"))

# Code d'état : l'exemple de Cloudflare utilise 301 ; choisissez 302 pour une redirection géographique

Netlify : conditions de pays dans _redirects#

Netlify lit les conditions de pays et de langue dans le fichier _redirects[5]. Les codes pays sont séparés par des virgules sans espaces, et les visiteurs peuvent remplacer le pays détecté avec le cookie nf_country, ce qui permet de faire en sorte qu’un sélecteur reste actif :

text# Les visiteurs en Allemagne ou en Autriche qui ouvrent la page d’accueil sont redirigés vers /de/
/  /de/  302  Country=de,at

# Les visiteurs en France sont redirigés vers /fr/
/  /fr/  302  Country=fr

Vercel : middleware de routage avec geolocation()#

Sur Vercel, un fichier middleware.ts à la racine du projet s’exécute avant chaque requête, et l’assistant geolocation() de @vercel/functions[6] renvoie le pays du visiteur. Response.redirect() envoie 302 par défaut. Geolocation n’est pas renseigné lors du développement local, donc testez sur un déploiement :

typescriptimport { geolocation, next } from '@vercel/functions';

export const config = { matcher: '/' }; // page d’accueil uniquement

const SITES: Record<string, string> = { DE: '/de/', AT: '/de/', FR: '/fr/' };

export default function middleware(request: Request) {
  // Respecte le choix déjà effectué par le visiteur dans votre sélecteur de pays
  if (request.headers.get('cookie')?.includes('country_choice=')) return next();

  const { country } = geolocation(request);
  const path = country ? SITES[country] : undefined;
  if (path) return Response.redirect(new URL(path, request.url), 302);
  return next();
}

Nginx : le module GeoIP2 et une base de données MaxMind#

Nginx a besoin du module tiers ngx_http_geoip2_module[7] et d’une base de données de pays comme MaxMind GeoLite2-Country (gratuite avec un compte). Mappez le code pays vers un chemin, puis redirigez uniquement la page d’accueil :

nginx# bloc http {}
geoip2 /etc/nginx/GeoLite2-Country.mmdb {
    $geoip2_country_code default=US country iso_code;
}
map $geoip2_country_code $country_home {
    default "";
    DE /de/;
    AT /de/;
    FR /fr/;
}

# bloc server {}
location = / {
    if ($country_home) { return 302 $country_home; }
    # sinon, servir la page d’accueil par défaut
}

Quelle que soit la plateforme que vous utilisez, testez depuis plus d’un pays avant de lui faire confiance : un VPN, un collègue à l’étranger ou une vérification à distance. Notre test de vitesse de redirection gratuit affiche le code d’état, la destination de l’URL et la validité de HTTPS, mesurés depuis Washington, Francfort et Tokyo. Si quelque chose semble anormal, notre guide sur les redirections qui ne fonctionnent pas liste les causes habituelles.

Votre redirection fonctionne-t-elle ? Entrez votre domaine. Vous verrez le code d’état (301 ou 302), la destination, si HTTPS est valide et la vitesse de réponse depuis Washington, Francfort et Tokyo, comparées à toutes les redirections testées au cours des 7 derniers jours.

Tester ma redirection

Domaines nationaux : faites pointer chaque ccTLD vers sa section#

De nombreuses marques possèdent des domaines nationaux qu’elles n’exploitent pas comme des sites séparés : mybrand.de, mybrand.fr, mybrand.com.au. Ils sont courants : environ un compte sur quatre sur RedirHub redirige au moins un domaine national (données de la plateforme RedirHub, octobre 2026). La manière la plus propre de les utiliser est une redirection fixe vers la section correspondante de votre site principal, et non une redirection géographique :

  • mybrand.de et mybrand.at → mybrand.com/de/, en conservant le chemin, de sorte que mybrand.de/kontakt arrive sur mybrand.com/de/kontakt.
  • mybrand.fr → mybrand.com/fr/, et ainsi de suite pour chaque pays.

Comme la redirection dépend uniquement de l’URL, chaque visiteur et chaque robot d’indexation obtient la même réponse, donc un code 301 est le bon choix. Si vous abandonnez des sites nationaux séparés pour les regrouper sous un seul domaine, traitez cela comme une migration de site web : faites correspondre chaque ancienne URL à sa nouvelle page plutôt que de tout envoyer vers une seule page d’accueil.

Comment rediriger un domaine national avec RedirHub#

RedirHub ne redirige pas selon le pays du visiteur ; pour cela, utilisez votre CDN ou votre hébergeur comme indiqué ci-dessus. Ce qu’il fait, c’est la partie domaine-pays : il répond pour les domaines qui n’ont pas de site web, conserve le chemin et fonctionne sur 130 points de présence (PoP) en bordure du réseau dans le monde, proches de chaque visiteur. Voici la configuration dans le tableau de bord :

RedirHub New domain redirect screen: Redirect from mybrand.de and mybrand.at, Redirect to https://mybrand.com/de, 301 · Permanent and Keep the path selected, with What happens previews
  1. Commencez une nouvelle redirection de domaine dans le tableau de bord RedirHub.
  2. Dans Rediriger depuis, saisissez le domaine pays, par exemple mybrand.de.
  3. Cliquez sur Ajouter une autre source pour chaque domaine qui doit aller vers la même section, par exemple mybrand.at.
  4. Dans Rediriger vers, saisissez la section, par exemple https://mybrand.com/de.
  5. Sous Type de redirection, conservez 301 · Permanente.
  6. Sous Chemins, choisissez Conserver le chemin. Le panneau Ce qui se passe montre que mybrand.de/kontakt va vers mybrand.com/de/kontakt.
  7. Cliquez sur Créer la redirection.
  8. Ouvrez Connecter DNS pour chaque domaine, choisissez Manuel, ajoutez les enregistrements indiqués (un enregistrement A sur @ pointant vers 3.33.236.10 et l’enregistrement TXT commençant par rehd-verify=), puis cliquez sur J’ai effectué les modifications.
  9. Une fois que le domaine apparaît comme connecté, vérifiez-le avec le test de vitesse de redirection.

Le domaine racine et www comptent comme un seul domaine, et le HTTPS est émis et renouvelé pour les deux via HTTPS automatique, donc https://www.mybrand.de fonctionne aussi. Avec une longue liste d’anciennes URL de pays, utilisez importation CSV en masse pour associer chacune à sa propre nouvelle page.

Redirection géographique sur votre CDN vs domaines pays sur RedirHub#

Redirection géographique sur votre CDN ou hébergeurRedirection par domaine pays sur RedirHub
Decides byPays de l’adresse IP du visiteur (ou langue du navigateur)L’URL : la même réponse pour tout le monde
Code de statut typique302 / 307301
Fonctionne pour les domaines sans hébergementSeulement si le domaine est sur ce CDNOui ; le DNS et les e-mails restent là où ils sont, seuls les enregistrements racine/www changent
PathsVous définissez les règlesConservez le chemin ou associez chaque ancienne URL à sa propre page ; plusieurs domaines source par redirection
HTTPSCela dépend de votre configurationDélivré et renouvelé automatiquement pour le domaine racine et www
ReportingVos propres analysesClics et visiteurs uniques avec les bots filtrés ; DNS revérifié toutes les 10 minutes
CostGénéralement inclus dans votre offre CDN ou d'hébergementÀ partir de 49 $/mois (Core), essai gratuit de 14 jours

Si votre domaine est déjà sur Cloudflare, Netlify ou Vercel et que vous n'avez besoin que d'une redirection géographique sur la page d'accueil, les outils intégrés ci-dessus suffisent et ne coûtent rien de plus. RedirHub vaut le coup lorsque vous avez des domaines nationaux sans hébergement qui doivent pointer vers la bonne section, avec la gestion des chemins et du HTTPS pour vous.

Erreurs courantes avec les redirections de pays#

  • Une redirection 301 pour une redirection géographique. Les navigateurs la mettent en cache, donc un voyageur qui a déjà visité depuis la France continue d’atterrir sur /fr/ chez lui.
  • Rediriger chaque URL, pas seulement la page d’entrée. Les liens partagés et les résultats de recherche aboutissent alors sur la mauvaise version.
  • Aucune issue. Sans sélecteur et sans choix mémorisé, les visiteurs ne peuvent pas accéder à la version qu’ils veulent.
  • hreflang manquant. Google peut afficher la page du mauvais pays dans les résultats de recherche ou considérer les versions comme des doublons.
  • Contenu différent pour Googlebot. Détecter le robot d’exploration et lui éviter la redirection est du cloaking.
  • Des domaines de pays pointant vers la page d’accueil. Conservez le chemin afin que les anciens liens mènent à la page correspondante.

Sources

  1. [1]Google Search Central: How Google crawls locale-adaptive pages
  2. [2]Google Search Central: Managing multi-regional and multilingual sites
  3. [3]Google Search Central: Localized versions of your pages
  4. [4]Cloudflare docs: Redirect visitors to country subdomains
  5. [5]Netlify docs: Redirect by country or language
  6. [6]Vercel docs: Routing Middleware API (geolocation)
  7. [7]ngx_http_geoip2_module (GitHub)

Questions fréquemment posées

Une redirection géographique envoie un visiteur vers une URL différente en fonction du pays d'où semble provenir son adresse IP, par exemple /de/ pour les visiteurs en Allemagne et /fr/ pour les visiteurs en France. Elle est généralement mise en place dans un CDN, dans les règles de redirection d'un hébergeur ou dans quelques lignes de code serveur.

Cela peut l'être. Googlebot parcourt souvent les sites depuis des adresses IP américaines et sans en-tête Accept-Language, donc une redirection basée sur l'IP ou la langue peut lui masquer vos autres versions par pays. Google déconseille de rediriger automatiquement les utilisateurs entre les versions linguistiques. Si vous le faites, utilisez un 302 uniquement sur la page d'entrée, laissez chaque version accessible et ajoutez hreflang.

Un 302 (ou un 307). La destination dépend de l'identité du visiteur, donc le déplacement n'est pas permanent, et les navigateurs mettent en cache les 301. N'utilisez un 301 que pour des redirections fixes, identiques pour tout le monde, comme mybrand.de vers mybrand.com/de/.

Affichez soit une bannière qui suggère la version locale et permet au visiteur de choisir, soit conservez des URL pays distinctes (comme /de/ et /fr/) reliées avec hreflang. De petits éléments comme la devise peuvent changer sur la même URL, mais tout ce que vous voulez faire indexer doit se trouver sur sa propre URL.

Créez une règle de redirection avec une expression de filtrage personnalisée qui vérifie ip.src.country, par exemple ip.src.country eq "DE" et http.request.uri.path eq "/", définissez l'URL cible et choisissez un 302 pour une redirection géographique.

Non. RedirHub redirige par URL, pas selon la localisation du visiteur. C'est un bon choix pour des domaines de pays comme mybrand.de qui doivent pointer vers une section de votre site principal, en conservant le chemin et en gérant le HTTPS. Pour le routage basé sur l'IP, utilisez votre CDN ou votre hébergeur.

Redirigez chacun d'eux avec un 301 vers la section correspondante de votre site principal, en conservant le chemin (mybrand.de/kontakt vers mybrand.com/de/kontakt). Laissez-les enregistrés afin que les anciens liens et e-mails continuent de fonctionner.

Trinayan Chakraborty

TC is the Operations Manager at RedirHub, leading the company’s operational strategy and execution to ensure reliable, scalable redirect infrastructure. He oversees internal processes, cross-team coordination, and platform readiness while supporting customers through complex redirect implementations. With a strong understanding of large-scale domain operations and real-world edge cases, TC plays a key role in aligning product and customer success to deliver stable, high-performance redirection solutions.