Regla Mod_rewrite para forzar el uso de un nombre de dominio particular para un directorio específico

Regla Mod_rewrite para forzar el uso de un nombre de dominio particular para un directorio específico

Me gustaría forzar el uso de un nombre de host/dominio diferente para un directorio particular en mi sitio.

Actualmente, existe un directorio que contiene varias páginas web en mainsite.com/directory. Para las páginas que residen solo en ese directorio, quiero que el nombre de dominio cambie en la barra de direcciones de los usuarios a diferentesitio.com. Idealmente, las páginas parecen estar en el nivel raíz de differentsite.com.

¿Qué reglas puedo agregar a mi archivo .htaccess de WordPress para lograr esto?

Respuesta1

Cree un bloque de las siguientes 3 líneas para cada directorio para el que desee hacer esto. Haga esto después de la RewriteEngine ondirectiva. En este ejemplo, www.example.com es el dominio que desea utilizar para el directorio.

RewriteCond %{REQUEST_URI} ^/directory1(.*)
RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteRule .* http://www.example.com%1 [L,R]

Una vez que lo haya probado, cambie [L,R]a [L,R=301]para indicar una redirección permanente para una mejor compatibilidad con SEO. No lo tengo para comenzar porque complica las pruebas ya que hace que los navegadores almacenen en caché la redirección.

Para que lo anterior funcione, deberá asegurarse de que el servidor esté configurado para escuchar el otro dominio y cuando se acceda a ese dominio, use la ruta completa a la subcarpeta (directorio1 en este caso) como raíz del documento para el dominio. .

Si no sabe cómo hacerlo y no le importa tener el subdirectorio en la URL, configure el otro dominio para usar la misma raíz de documento que el dominio principal y luego use las siguientes reglas:

RewriteCond %{REQUEST_URI} ^/directory1.*
RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteRule .* http://www.example.com%{REQUEST_URI} [L,R]

información relacionada