.htaccess redirige vers sous-domaine

Je suis obligé de configurer le scénario, si quelqu’un visite website.com/blog/, il est redirigé vers blog.website.com .

J’ai utilisé ce code dans mon fichier .htaccess pour réaliser d’autres redirections (de .net vers .com) précédemment:

Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^(www.|blog.)?website.net(.*) [NC] RewriteRule (.*) http://www.website.com/$1 [R=301,L] 

Il peut également être pertinent que j’ai un ErrorDocument 404 dans mon fichier de configuration apache.

Pour résoudre mon problème, j’ai essayé ceci:

 Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^(www.|blog.)?website.net(.*) [NC] RewriteRule (.*) http://www.website.com/$1 [R=301,L] RewriteCond %{HTTP_HOST} ^(www.)?website(.com|.net)/blog/?$ [NC] RewriteRule (.*) http://blog.website.com/ [L] 

Ce code ne fonctionne cependant pas. Mon document d’erreur traite toujours la demande (le répertoire / blog / n’existe pas). J’ai essayé de déplacer ce nouveau code au-dessus de ErrorDocument dans le fichier de configuration apache, mais la même chose s’est produite.

C’est sans doute une erreur de syntaxe, toute aide serait grandement appréciée 🙂

Essayez d’append ce qui suit au fichier .htaccess dans le répertoire racine de votre site webiste.com .

 RewriteEngine on RewriteBase / #if not already blog.website.com RewriteCond %{HTTP_HOST} !^blog\.website\.com$ [NC] #if request is for blog/, go to blog.website.com RewriteRule ^blog/$ http://blog.website.com [L,NC,R=301] 

dans le fichier .htaccess à la racine de votre répertoire website.com

 RewriteEngine on RewriteBase / RedirectMatch 301 ^/blog/(.*)$ http://blog.website.com/$1