2010-09-26 30 views
0

J'ai un problème où je veux rediriger tout le trafic [301 permanent] dehtaccess domaine direct et sous-domaine?

www.example.com --> www.website2.com 
blog.example.com --> blog.example.com 

rediriger Donc tous les domaines/sous-domaines sur « Example.com » à website2.com SAUF pour le blog sur example.com? Vous ne savez pas comment configurer ceci en utilisant .htaccess sur "example.com"?

Vraiment apprécier toute aide.

Répondre

0

Un peu semblable à this question:

RewriteCond %{HTTP_HOST} !(^blog\.example\.com$) 
RewriteRule (.*) http://www.website2.com/$1 [R=permanent,QSA,L] 

Ligne par ligne:

Si l'en-tête Host: ("% {HTTP_HOST}") est pas ("!") blog.example.com (pas d'autre string correspond à regex), exécutez la réécriture suivante:

pour un motif correspondant à n'importe quoi (". *", c'est-à-dire pour n'importe quelle URL), redirigez vers le même chemin sur www.website2.com (par exemple http://blahblah.example.com/somepath sera redirigé vers http://www.website2.com/somepath).

+0

merci beaucoup - donc cela prend l'approche inverse? rediriger tout MAIS blog.example.com? – Tom

+0

hmm - le seul problème avec ce code est qu'il ne permet pas blog.example.com/post-name/ etc? comment résoudre ce problème, c'est-à-dire autoriser toute URL sur blog.example.com mais rediriger tout le reste sur ce sous-domaine? – Tom

+0

@Tom: Avez-vous essayé, ou est-ce juste votre spéculation? Le code ne fera * rien * pour les URL sur blog.example.com, car la deuxième ligne ne sera pas atteinte (parce que RewriteCond évaluera à false). – Piskvor