Nous recherchons un moyen de rediriger les visiteurs hors de notre pays vers notre site Web international.
Tout d'abord, nous devons détecter leur emplacement avec un service de géolocalisation, puis les rediriger s'ils ne sont pas des visiteurs natifs. Mais nous ne voulons pas nuire à notre référencement existant pendant que nous le faisons.
Devons-nous utiliser la redirection côté serveur 302 ou une redirection côté client avec JavaScript?
Mais nous ne voulons pas nuire à notre référencement existant pendant que nous le faisons.
Ce qui pourrait vous préoccuper ici est Cloaking - c'est-à-dire que le navigateur d'un utilisateur diffuse un contenu différent de celui utilisé pour les robots des moteurs de recherche.
Dans la mesure où vous utilisez IP delivery , qui utilise l'emplacement du demandeur pour fournir du contenu spécifiquement écrit pour ce pays, par opposition à la redirection basée sur l'agent utilisateur, tout devrait bien se passer comme indiqué ici :
La plupart des 1 000 principaux sites, y compris Amazon (Amazon.com), utilisent activement la transmission IP. Aucune d'entre elles n'a été bannie des moteurs de recherche car son intention n'est pas trompeuse.
Vous devez également probablement être au courant des problèmes liés à la diffusion de services duplicate content entre votre site Web international et un site Web spécifique à votre pays, s'ils contiennent le même contenu, qui peut être traité avec canonicalization et géolocalisation votre contenu.
Pour effectuer la redirection avec la livraison IP, il serait sage d'utiliser un service fournissant des bases de données GeoIP régulièrement mises à jour, telles que Base de données de pays GeoIP de MaxMind . Vous pouvez implémenter cela en utilisant le serveur APIs dans les langues suivantes:
Beaucoup d'entre eux ont aussi des modules open source faciles à utiliser. Par exemple, j'utilise cette extension PHP: G eo IP Location , ainsi que ce module Perl: GEO-IP .
Il existe une version gratuite de la base de données, GeoLite , mise à jour une fois par mois, et une version payante plus précise, GeoIP Country , qui est mise à jour plus fréquemment.
Il existe également une JavaScript Client API , disponible dans une version gratuite et payante (la version gratuite ne requiert qu'une déclaration d'attribution sur votre site Web). Ceci associe à la fois Géolocalisation W3C et leur service Web GeoIP2 , qui tente d’abord de localiser le visiteur à partir de son navigateur. S'il n'est pas disponible ou inexact, il utilise ensuite une recherche GeoIP. .
En plus de l'exemple de code, un tutoriel explique comment utiliser l'API ici: Didacticiel GeoIP2 JavaScript
Devons-nous utiliser la redirection côté serveur 302 ou une redirection côté client avec JavaScript?
Un 2 redirect indiquerait que la page était "déplacée temporairement", ce qui n'est pas vraiment le cas ici. L'implémentation des API côté serveur ou de JavaScript ci-dessus serait suffisante.
En ce qui concerne l’utilisation, JavaScript côté serveur ou JavaScript côté client, cela dépend si vous souhaitez exécuter des actions sur votre serveur liées à la redirection, telles que l’affichage de contenu, de publicités, etc., spécifiques à un pays donné. JavaScript réduit les ressources du serveur. Toutefois, si JavaScript est désactivé dans le navigateur de l'utilisateur, la redirection ne peut pas être effectuée à moins que l'emplacement ne soit fourni par son navigateur (voir ci-dessus). Pour cette raison, il est toujours sage de fournir un lien "Pays" dans la navigation de votre site Web.
Cette page de Google Webmaster Tools peut vous aider.
En haut de la page, insérez des liens vers les deux versions de votre site afin que les utilisateurs puissent basculer entre elles et que les moteurs de recherche puissent également y accéder.
La meilleure solution selon moi consiste à détecter l'emplacement de l'utilisateur à l'aide de JavaScript et, s'ils ne possèdent pas la bonne version, d'afficher un message lui demandant s'il souhaite être redirigé vers la version régionale/internationale du site.