Redirigir un dominio a otro manteniendo la URL

Redirigir un dominio a otro manteniendo la URL

Cuando se trabaja haciendo desarrollo de páginas web, tarde o temprano te encuentras con que necesitas realizar una redirección de un dominio a otro. Normalmente esto se puede hacer de manera sencilla desde el panel del hosting de tu proveedor. Sin embargo a veces no disponemos de esta posibilidad o simplemente la redirección que obtenemos es parcial, por ejemplo mandado todo el tráfico a la página de inicio.

Sea cual sea el motivo que te lleve a redireccionar, vamos a ver cómo podemos hacerla desde el archivo .htaccess que se encuentra en el directorio principal de la web. Pero lo vamos a hacer manteniendo la estructura de la URL, es decir, que mandaremos a la misma dirección completa de página pero cambiando el dominio. De este modo los productos de una tienda o los artículos de un blog se redireccionarán cada uno de manera individual a su homónimo en el nuevo dominio.

Lógicamente necesitarás acceso por FTP o a través del inspector de archivos del panel del hosting, que habitualmente suele incorporar el proveedor. Una vez entres, busca el archivo y ábrelo, ahí es donde deberás añadir las instrucciones que te indicaré a continuación.

Te voy a mostrar dos opciones diferentes de realizar la redirección según el tipo de dominio que tengas. Ambas opciones son similares, sólo cambia la parte relacionada con cómo debes introducir el nombre en cuestión.

Dominio normal

Para la mayoría de los dominio puedes utilizar este código

# Desactiva MultiViews para asegurarnos que RewriteRules se lanza en cada URI
Options -MultiViews

# Activa mod_rewrite, si no lo está ya
RewriteEngine On

# Solo intercepta peticiones que lleguen por el dominio antiguo
RewriteCond %{HTTP_HOST} ^(www\.)?dominioanterior\.com$ [NC]

# Redirige todas las URIs a la misma ruta en el nuevo dominio
RewriteRule ^ https://nuevodominio.com%{REQUEST_URI} [R=301,L]

Dominio con caracteres especiales

En caso de que el dominio contenga caracteres especiales como tildes, puedes seguir el ejemplo de esta otra versión introduciendolo con el mismo formato. Ten en cuenta que necesitarás conocer previamente la versión Punycode del dominio.

# Desactiva MultiViews para asegurarnos que RewriteRules se lanza en cada URI
Options -MultiViews

# Activa mod_rewrite, si no lo está ya
RewriteEngine On

# Si las peticiones vienen de un dominio como ferretería.com (versión Punycode)
RewriteCond %{HTTP_HOST} ^(www\.)?xn--ferretera-jhb\.com$ [NC]

# Redirige todas las URIs a la misma ruta en el nuevo dominio
RewriteRule ^ https://nuevodominio.com%{REQUEST_URI} [R=301,L]

En ambos casos he definido las redirecciones como 301, es decir, una redirección permanente. Esto sirve para indicar a los buscadores que el dominio anterior ya no debe tenerlo en cuenta para la indexación y deben trasvasar toda su autoridad al de destino. No obstante, si la redirección es temporal, pues puedes indicarlo cambiando lo anterior por 302.

Jesús Tovar - Desarrollador web freelance Sevilla

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *