PGMC Posté 4 Mai 2006 Posté 4 Mai 2006 Bonjour, J'ai un site qui est actuellement en sous-nom de domaine (forme "site.domaine.com" avec "domaine.com" ne m'appartenant pas) que je veux passer à un nom de domaine ("nouveaudomaine.com", que j'ai réservé). Il n'y a pas de changement physique de serveur. Je voudrais (bien évidemment) que le basculement se passe sans douleur, et donc que Google et les autres moteurs basculent sur le nouveau nom et oublient l'ancien, et que les visiteurs venant avec l'ancienne URL (ie: le sous nom de domaine) voient que l'adresse a changé. La solution à laquelle j'ai pensé est : - Faire pointer le nouveau nom de domaine vers le répertoire où se situe le site - Faire pointer l'ancien sous-nom de domaine vers un nouveau répertoire qui ne contiendra qu'un .htaccess avec un redirect 301 global vers le nouveau site Ca me semble valide (je n'ai pas testé encore...), mais je me demande si je suis vraiment obligé d'avoir deux répertoires distincts (qui reviennent à simuler un changement de serveur physique). Est-ce qu'en mettant tout simplement le redirect dans le répertoire ça fonctionnerait aussi ? Existe-t-il une meilleure solution ? Merci pour tout commentaire / critique / etc.
Dan Posté 4 Mai 2006 Posté 4 Mai 2006 Une réécriture conditionnelle... tout simplement. Donc: RewriteCond %{HTTP_HOST} anciendomaine.tldRewriteRule /(.*) http://www.nouveaudomaine.tld/$1 [R=301,QSA,L] Si le HOST est l'ancien domaine, on renvoie vers la même page sur le nouveau avec une entête 301 avec éventuellement le QUERY_STRING s'il existe.
PGMC Posté 4 Mai 2006 Auteur Posté 4 Mai 2006 Merci beaucoup, je vais mettre ça en place. Il y a une précision que j'avais oublié de donner : le site en lui-même est en SPIP (1.7) utilisant l'url rewriting. Mettre ces deux lignes avant la partie réservée à SPIP dans le .htaccess ne plantera pas ces réécritures ? Faut-il que je rajoute une autre condition ?
Dan Posté 4 Mai 2006 Posté 4 Mai 2006 Non, il suffit de mettre ces lignes tout au début... elles n'auront aucune influence sur les lignes suivantes parce que si le HOST est l'ancien domaine, la redirection externe aura lieu et les autres ne seront pas lues. Dans le cas où la condition est fausse, la réécriture ne s'effectuera pas.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant