2011-04-17 20 views
7

tengo dos nombres de dominio de configuración con subdominios de la siguiente manera ...dominio Comodín redirigir con WordPress

blog.domain.com 
www.blog.domain.com 

blog.domain.info 
www.blog.domain.info 

Ambos dominios están apuntando en la misma ubicación en el mismo servidor, un directorio que contiene WordPress. (Domain.com/blog)

Para mantener Google feliz, yo quiero todo para redirigir a éste dominio ...

blog.domain.com 

Aquí es lo que hay dentro del archivo .htaccess contenida en el directorio de WordPress .. .

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 
# END WordPress 

Así que me fui a mi cPanel y añadió un redireccionamiento 301 de la siguiente manera ...

blog.domain.info -> blog.domain.com (con "www" opcional y comodín seleccionado).

cPanel continuación añade automáticamente el siguiente para el mismo archivo .htaccess bajo el WordPress reescribir las reglas ...

RewriteCond %{HTTP_HOST} ^blog.domain.info$ [OR] 
RewriteCond %{HTTP_HOST} ^www.blog.domain.info$ 
RewriteRule ^(.*)$ "http\:\/\/blog\.domain\.com$1" [R=301,L] 

El problema es que no parece la parte de comodín para trabajar.

Cuando voy a blog.domain.info, me redirigen a blog.domain.com como se esperaba.

Pero cuando voy al blog.domain.info/my-post, no me redireccionan en absoluto.

  1. ¿Cómo puedo reparar esto? He intentado reescribir las reglas que sé que funcionan, pero todo lo que puedo pensar es que las reglas de WordPress están interfiriendo.

  2. Una vez que se ha solucionado, ¿puedo mover estas modificaciones de modificación al .htaccess principal en la raíz www de la cuenta de hosting para mantenerlas separadas de las reglas de WordPress? Editar: Respuesta- NO, no funcionarán porque son dominios estacionados en directorios fuera de la raíz www.

de agradecimiento!

Respuesta

17

Parece que simplemente tuve que mover las nuevas reglas sobre la sección de WordPress. También agregué uno nuevo que se supone que elimina el 'www' del nombre de dominio punto com.

Todo parece funcionar.

Cualquier comentario apreciado.

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_HOST} ^blog.domain.info$ [OR] 
RewriteCond %{HTTP_HOST} ^www.blog.domain.info$ [OR] 
RewriteCond %{HTTP_HOST} ^www.blog.domain.com$ 
RewriteRule ^(.*)$ "http\:\/\/blog\.domain\.com\/$1" [R=301,L] 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 
# END WordPress 

EDITAR

Debe tenerse en cuenta que si cambia nada en el archivo .htaccess contenido entre estos comentarios de Wordpress, puede ser que consiga sobrescritos por Wordpress en un momento posterior. Mover tus ediciones personalizadas fuera Y encima de este bloque también funciona y es inmune a cualquier cambio en htaccess realizado por Wordpress.

RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_HOST} ^blog.domain.info$ [OR] 
RewriteCond %{HTTP_HOST} ^www.blog.domain.info$ [OR] 
RewriteCond %{HTTP_HOST} ^www.blog.domain.com$ 
RewriteRule ^(.*)$ "http\:\/\/blog\.domain\.com\/$1" [R=301,L] 

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 
# END WordPress 
2

i tienen varios dominios para mi sitio Methodshop, incluyendo methodshop.com, methodshop.net, etc .. Al hacer el mantenimiento, voy a desviar el tráfico entre los diferentes sitios para que mis usuarios no tienen su experiencia interrumpido debajo está el script de htaccess wildcard que uso. toma la URL a la que el usuario intente acceder y refleja ese enlace en otro dominio.

por ejemplo, http://methodshop.NET/games/play/bubblewrap/index.shtml

sería redirigir a http://methodshop.COM/games/play/bubblewrap/index.shtml

aquí está la secuencia de comandos htaccess para methodshop.net que reescribe todo methodshop.net URL a methodshop.com. solo edítelo para su dominio.

RewriteEngine on

RewriteRule (.*)$ http://www.methodshop.com\/$1 [R=301,L]

+0

no es bueno. Tu sugerencia provocó un error de "demasiados redireccionamientos" en mi servidor. ¿Dónde están las líneas 'RewriteBase' o' RewriteCond'? – Sparky

Cuestiones relacionadas