2012-02-17 36 views
10

estoy atando para establecer el escenario, si alguien visita website.com/blog/ se les redirige a blog.website.com..htaccess redirección al subdominio

que utiliza este código en mi archivo .htaccess para lograr algún otro cambio de dirección (de .NET para .com) anteriormente:

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

También puede ser relevante que tengo una ErrorDocument 404 en mi archivo de configuración de apache

Para resolver mi mi problema he intentado esto:

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] 

Este código sin embargo, no está funcionando. Mi documento de error todavía está manejando la solicitud (el directorio/blog/no existe). Intenté mover este nuevo código por encima del ErrorDocument en el archivo apache conf, pero ocurrió lo mismo.

Es sin duda un error sintáctico, cualquier ayuda sería muy apreciada :)

Respuesta

6

Trate de añadir lo siguiente al archivo .htaccess en el directorio raíz de su sitio 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] 
+1

Eso funcionó perfectamente gracias – user1216981

8

en el archivo .htaccess en la raíz del directorio de website.com

RewriteEngine on 
RewriteBase/

RedirectMatch 301 ^/blog/(.*)$ http://blog.website.com/$1 
Cuestiones relacionadas