web-dev-qa-db-fra.com

Redirection de site Web, en conservant l'URL d'origine

Nous avons example.org (notre site principal) enregistré et hébergé sur un serveur américain. Nous avons acheté example.gr nom de domaine en Grèce, un registraire local. Nous avons fait .gr pointer sur .org DNS, d'accord. Un visiteur saisit l'URL .gr et voit .org dans son navigateur, mais l'URL a immédiatement été remplacée par .org. Existe-t-il un moyen de conserver l'URL .gr et de toujours voir .org? Si un visiteur .org clique ensuite sur un lien vers example.org/abcd.php, un visiteur .gr cliquant sur le même lien peut-il voir la barre d'adresse afficher example.gr/abcd.php?

Notre bureau d'enregistrement américain nous a dit de contacter le bureau d'enregistrement grec et de demander une cartographie. Le bureau d'enregistrement grec a défini une iframe affichant example.org et l'a appelé example.gr. Mais c’était faux, car à chaque fois qu’un visiteur cliquait sur quelque chose, la barre d’adresse ne affichait qu’une chose, la même URL tout le temps, example.gr. Nous avons donc annulé ce truc de cartographie bon marché et je ne sais pas quoi faire.

2
Patrick

Vous pouvez faire un <iframe>,

<style type=text/css>
    body{margin: 0;overflow:hidden;}
</style>
<iframe src="http://example.org/" style="border: 0; width: 100%; height: 100%" frameBorder="0">
    Browser not compatible.
</iframe>

Donc, vous appelez ceci index.html et le placez sur le serveur example.gr.

1
ionFish

Je ne classerais pas une solution iframe comme la meilleure solution, bien que cela ne réponde pas directement à votre question, cela vous donne une solution supplémentaire plus robuste, sans oublier un site plus convivial pour le navigateur.

Je pense que la méthode qui vous convient le mieux est d’utiliser rel="canonical" sur le domaine .gr en faisant référence à .org en tant que maître (pas de redirections). S'ils visitent .gr, ils restent sur .gr et inversement sur .org. Le .org sera le maître aux fins du classement dans Google de la même manière que la méthode iframe.

Donc, pour rendre cela possible, procédez comme suit:

  1. Clonez le contenu du fichier du site dans un autre dossier d'hébergement si efficace que vous ayez deux comptes d'hébergement, mais ceux-ci sont mis en miroir.
  2. Configurez le site .gr pour qu'il utilise la base de données du site .org afin que les deux sites soient exactement identiques. (Vous devrez peut-être ajuster le paramètre base_url) ou utiliser un plugin pour plusieurs sites (si vous n'avez pas de code SQL, c'est encore plus facile).
  3. Vous voudrez utiliser rel="canonical" sur le maître .org et .gr en tant qu'esclave.
  4. Étape facultative (vous pouvez même robotiser le site .gr de l'indexation)

Exemples de rel="canonical" en action:

Dans la tête de votre site maître (domaine .org), vous utiliserez les éléments suivants:

<link rel="canonical" href="http://www.example.org/page1"/>

Dans la tête de votre site esclave (domaine .gr), vous utiliserez les éléments suivants:

<link rel="canonical" href="http://www.example.org/page1"/>

En gros, cela indique à Google que le maître est l’org, vous pouvez même aller un peu plus loin et robots.txt le site .gr complètement mais avec Avec cette méthode, vous n'obtiendrez pas de slap de contenu dupliqué sur le .gr avec ou sans robots.

tilisation de deux domaines un site WordPress

Étape 1: Accédez à vos paramètres généraux, supprimez complètement "l'adresse du blog (URL)" et enregistrez.

Étape 2: Ajoutez quelque chose comme le code ci-dessous à header.php:

$ThisDomain = $_SERVER['SERVER_NAME'];

if($ThisDomain=='example.org' || $ThisDomain=='www.example.org')
{ echo '.org stuff'; }
elseif($ThisDomain=='example.gr' || $ThisDomain=='www.example.gr')
{ echo '.gr stuff'; }

Étape 3: Assurez-vous que HTTP_Host n'est pas défini dans le code SQL.

1
Simon Hayter

On dirait que vous cherchez un domaine parqué . Ceci est facile à configurer si votre hébergeur web exécute cPanel.

0
Kalessin

Si vous n'utilisez pas de compte d'hébergement partagé et que vous avez accès à la configuration Apache, créez simplement un autre hôte virtuel avec un nom ServerName différent, pointant vers la même racine de document.

D'autres serveurs Web auront une configuration similaire, par exemple, créez simplement un autre bloc server {} pour nginx.

0
John Dorean