2009-09-14 10 views
1

dynamique Je me déplace un blog d'un serveur à l'autre et l'ajout d'un sous-domaine, de sorte que le chemin passe de -htaccess mod rewrite w/match

http://www.example.com/queen/index.php/2009/winners-and-losers/ 

à -

http://blogs.example.com/queen/2009/winners-and-losers/ 

Qu'est-ce que mod_rewrite règles devrais-je ajouter au .htaccess sous /queen/ sur www.example.com à 301 rediriger vers le nouveau http://blogs.example.com/queen/?

Ce qui change est le 'www'> 'blogs' et le 'index.php/' s'en va.

Merci!

Répondre

1

Essayez cette règle:

RewriteRule ^index\.php/(.*) http://blogs.example.com/queen/$1 [L,R=301] 

Et si ce dossier est également accessible par d'autres noms d'hôte, mais la règle ne doit être appliquée au sein www.example.com:

RewriteCond %{HTTP_HOST} =www.example.com 
RewriteRule ^index\.php/(.*) http://blogs.example.com/queen/$1 [L,R=301] 
+0

je reçois un 404 quand j'essayer. L'ancien .htaccess utilisé pour ressembler this- RewriteBase/ RewriteCond% {REQUEST_FILENAME}! -f RewriteCond% {REQUEST_FILENAME}! -d RewriteRule^([^ /] +/[^ /] + /?) $ index.php/$ 1 [NC, l] Je rebaptisés le sous-dossier, il a été et a créé une nouvelle/reine/dossier est vide, sauf pour le fichier .htaccess que maintenant HAS- RewriteBase/ RewriteRule^index \ .php /(.*) http://blogs.theroanoker.com/queen/$1 [L, R = 301] Mais mes URL génèrent un 404. Ai-je fait quelque chose de mal? – Marty

+0

@Marty: n'utilisez pas 'RewriteBase' si vous n'avez pas besoin de modifier le chemin de l'URL de base. – Gumbo