2 noms de domaine pour hébergement

  • Auteur de la discussion Auteur de la discussion mozzlo
  • Date de début Date de début
WRInaute discret
bonjour,

j'ai 2 noms de domaine.

1/ mondomaine.fr (que je souhaite principal)
2/ mondomaine.com (que je souhaite secondaire)

J'ai pour l'instant mondomaine.fr qui pointe sur mon hébergement (répertoire du site).
Les 2 noms de domaines sont déposés chez le même hébergeur (ovh pour ne pas le citer...).


Souhait :

Faire pointer mondomaine.com sur mondomaine.fr .
En fait, quand les internautes tapent mondomaine.com qu'ils puissent arriver sur mondomaine.fr qui arrive sur l'hébergement du site.
Peu importe l'url visible ou pas, la SEULE CHOSE IMPORTANTE EST QUE CELA NE NUISE PAS AU REFERENCEMENT (duplicate content) !

Merci pour votre aide...
 
WRInaute discret
oui, j'ai bien lu cet article mais je n'arrive pas à comprendre à quel endroit dois je placer cette redirection.

mondomaine.com n'a pas d'hébergement, donc "ou" (l'endroit "matériel" si je puis dire) je place ma redirection ?

Merci..bcp
 
Nouveau WRInaute
Dans le manager d'ovh, tu fais pointer le domaine "mondomaine.com" sur ton hébergement lié au domaine "mondomaine.fr".

A la racine de ton site mondomaine.fr, tu installes ton fichier .htaccess dans laquelle tu insères la règle

Code:
RewriteRule (.*) http://mondomaine.fr/{$1} [R=301]
 
WRInaute discret
Je te remercie pour ta réponse.

Donc si j'ai bien compris le domaine.com via le manager je passe par l'option "multidomaine" (c'est mon cas ici) et je le fais pointer sur le répertoire en question qui contient les fichiers du site. Bon jusque là c'est bon.

Ensuite,
Code:
RewriteRule (.*) http://mondomaine.fr/{$1} [R=301]

Alors là je comprends moins, cela veut dire quoi vis à vis du site mondomaine.com ? Nulle part il est mentionné !? 8O

Merci encore...pour ces explications complémentaires pour néophytes....
 
Nouveau WRInaute
Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^mondomaine\.fr$ [NC]
RewriteRule ^(.*)$ http://mondomaine.fr/$1 [R=301,L]

voilà exactement le code à mettre dans ton fichier .htaccess, dans ma précipitation j'ai oublié quelques éléments.

Code:
RewriteEngine On
active le module de réécriture d'url d'Apache (s'il est déjà présent dans le .htaccess, il ne faut pas le répéter !).

Code:
RewriteCond %{HTTP_HOST} !^mondomaine\.fr$ [NC]
veut dire que tout ce qui sera différent (!) de "mondomaine.fr" sera réécrit avec la règle en dessous. La casse n'est pas prise en compte ([NC]).

Code:
RewriteRule ^(.*)$ http://mondomaine.fr/$1 [R=301,L]
veut dire que ce qui vérifie la condition énoncée au dessus sera renvoyé réécrit en "mondomaine.fr" accompagné d'un code HTTP 301 (redirection permanente)

Voilà j'espère que j'ai été plus clair ;-)
 
WRInaute discret
Mille mercis ! C'est très clair et pédagogique !

J'ai insérer le code exactement avec le nom de domaine concerné, mais j'ai un message d'erreur du navigateur :
"la page n'est pas redirigée correctement" sous firefox (pas tout a fait au mot près, mais presque), j'ai enlevé le code, cela remarche bien évidemment.

1 / J'ai déjà aussi d'autres syntaxes dans mon .htaccess , voir ci dessous, cela ne peut pas rentrer en conflit ? :


Code:
RewriteRule (.*) index.php


RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#


2/ Question subsidiaire :oops: , est-ce que la présence des "www" est importante la dedans, et si oui, ou peut-elle figurer ?

Merci encore...
 
Nouveau WRInaute
Je dirais que c'est une bonne question ! :-)

1 / Vu ton code .htaccess, met les lignes que je t'ai donné avant celles déjà en place. Tu as mis tout ton .htaccess ou as-tu omis des parties ?

2 /La deuxième ligne du code de ton .htaccess inclut "^". Ce caractère signifie ici que ton domaine doit commencer par "mondomaine" et non par "www".

Si tu ne comptes pas te servir des sous-domaines (par exemple "www"), je suis sûr et certain que ça ne pose pas de problème. Dans le cas contraire, il faudra que tu crées les règles nécessaires à leur gestion (mais c'est la même logique) ...

Ca donnera quelque chose comme ça :
Code:
#activation du module
RewriteEngine On

#Dans le cas du sous-domaine "sous-domaine"
RewriteCond %{HTTP_HOST} !^sous-domaine.mondomaine\.fr$ [NC]
RewriteRule ^(.*)$ http://sous-domaine.mondomaine.fr/$1 [R=301,L]

#Dans le cas générique
RewriteCond %{HTTP_HOST} !^mondomaine\.fr$ [NC]
RewriteRule ^(.*)$ http://mondomaine.fr/$1 [R=301,L]

Voilà
 
WRInaute discret
1 / Vu ton code .htaccess, met les lignes que je t'ai donné avant celles déjà en place. Tu as mis tout ton .htaccess ou as-tu omis des parties ?

Voici le code entier (site sous cms joomla!)

Code:
##
# @version $Id: htaccess.txt 13415 2009-11-03 15:53:25Z ian $
# @package Joomla
# @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software
##


#####################################################
#  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your sef url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
#
#####################################################

##  Can be commented out if causes errors, see notes above.
Options +FollowSymLinks

#
#  mod_rewrite in use

RewriteEngine On


SetEnv IONCUBE 1
SetEnv ZEND_OPTIMIZER 0
SetEnv PHP_VER 5


########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
## Deny access to extension xml files (uncomment out to activate)
#<Files ~ "\.xml$">
#Order allow,deny
#Deny from all
#Satisfy all
#</Files>
## End of deny access to extension xml files
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End - Rewrite rules to block out some common exploits

#  Uncomment following line if your webserver's URL
#  is not directly related to physical file paths.
#  Update Your Joomla! Directory (just / for root)

# RewriteBase /


########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section

Si tu ne comptes pas te servir des sous-domaines (par exemple "www")

Sinon, je compte me servir des "www" pour que le site soit accessible avec ou sans les "www".
Donc, il faut que je rajoute , du style :

Code:
RewriteCond %{HTTP_HOST} !^www.mondomaine\.fr$ [NC]
RewriteRule ^(.*)$ http://www.mondomaine.fr/$1 [R=301,L]

..en plus des lignes initiales ? (que tu m'as indiqué dans ton 2nd message).
Merci infiniment..
 
Nouveau WRInaute
Pour les sous-domaines, oui il faut que tu les ajoutes comme je te l'ai indiqué dans mon 3e message.

Pour le placement des lignes dans ton fichier .htaccess, pour ma part je les collerai juste après
Code:
SetEnv PHP_VER 5
 
WRInaute discret
Merci pour ces précisions...

Voilà exactement ce que j'ai mis dans le .htaccess :

Code:
##
# @version $Id: htaccess.txt 13415 2009-11-03 15:53:25Z ian $
# @package Joomla
# @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software
##


#####################################################
#  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your sef url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
#
#####################################################

##  Can be commented out if causes errors, see notes above.
Options +FollowSymLinks

#
#  mod_rewrite in use



SetEnv IONCUBE 1
SetEnv ZEND_OPTIMIZER 0
SetEnv PHP_VER 5

#activation du module
RewriteEngine On

#Dans le cas du sous-domaine "sous-domaine"
RewriteCond %{HTTP_HOST} !^www.toto\.fr$ [NC]
RewriteRule ^(.*)$ http://www.toto.fr/$1 [R=301,L]

#Dans le cas générique
RewriteCond %{HTTP_HOST} !^toto\.fr$ [NC]
RewriteRule ^(.*)$ http://toto.fr/$1 [R=301,L]

########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
## Deny access to extension xml files (uncomment out to activate)
#<Files ~ "\.xml$">
#Order allow,deny
#Deny from all
#Satisfy all
#</Files>
## End of deny access to extension xml files
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End - Rewrite rules to block out some common exploits

#  Uncomment following line if your webserver's URL
#  is not directly related to physical file paths.
#  Update Your Joomla! Directory (just / for root)

# RewriteBase /


########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section

le navigateur me retourne :

Code:
La page n'est pas redirigée correctement.
Firefox a détecté que le serveur redirige la demande pour cette adresse d'une manière qui n'aboutira pas.

D'où cela peut il bien provenir ?

Tks a lot.. AGAIN ! :)
 
Nouveau WRInaute
Essaie avec IE ou un autre navigateur !

Si ça passe le problème est lié à Firefox. Vide le cache, les cookie, l'historique, désactive les extensions ... et réessaie.

Il serait intéressant de voir le problème en live également
 
WRInaute discret
Super, 1000 mercis en effet, cela fonctionne maintenant,sans rien faire, sous firefox ou autre navigateurs, alors pourquoi pas hier 8O .

Donc, pour nous résumer les étapes et afin d'éviter le "duplicate content" et afin d'avoir 2 noms de domaine (avec même Dns chez même hébergeur) pour le même site (1 seul hébergement)

1/Je pointe le nom de domaine principal mondomaine.fr et http://www.mondomaine.fr (donc avec et sans les "www") sur le répertoire du site /monrepertoire

2/Je pointe le second domaine mondomaine.com http://www.mondomaine.com (donc avec et sans les "www") sur le même répertoire du site de mon hébergement /monrepertoire.

3/ Pour indiquer aux robots qu'il n'y a qu'1 seul site, je n'ai mis que ces lignes dans le fichier .htaccess (sinon, cela marcherait quand même avec uniquement les étapes 1/ et 2/, c'est bien cela ?) :
Code:
#Dans le cas générique
RewriteCond %{HTTP_HOST} !^www.mondomaine\.fr$ [NC]
RewriteRule ^(.*)$ http://www.mondomaine.fr/$1 [R=301,L]

Merci de confirmer s'il n'y a pas d'oubli(s)ou malentendu(s) dans ce récapitulatif. :)
Encore mes remerciements à tamzac pour le suivi de ma requête.
 
Nouveau WRInaute
Un malheureux problème de cache ...

Un petit malentendu et tout est réglé ! ;)

3/ La redirection 301 permet d'indiquer qu'il n'y a qu'un seul site donc je laisserais les 4 lignes ...

et n'oublie pas de dupliquer les lignes pour chaque sous-domaine que tu créeras !

Have a good web ! :D
 
WRInaute discret
3/ La redirection 301 permet d'indiquer qu'il n'y a qu'un seul site donc je laisserais les 4 lignes ...

ok merci pour le conseil, mais en laissant les 2 lignes supplémentaires...cela beuguait donc...

Merci toutefois again ! :)
 
Discussions similaires
Haut