Redirección 301 con .htaccess

Redirección 301 con .htaccess

Hacer una redirección 301 o 302 realmente no es algo que uno utilice o que piense que va a utilizar mucho o con mucha frecuencia. Sin embargo, con el tiempo quizás pueden surgir uno que otro evento que nos lleva a la necesidad de hacerlo, por una u otra circunstancia.

Pues bien, este es un pequeño tutorial en el que aprenderemos cómo hacer un redireccionamiento sin mayores problemas.

Redirección 301 con .htaccess

Como ya lo dijimos, para ello sólo vamos a necesitar agregar al final de nuestro .htaccess de Apache una línea de código que va a hacer todo el trabajo.

Redirigir sólo una página

Si sólo vamos a redirigir una página a un nuevo dominio o subdominio, podemos ingresar este código

redirect 301 /url_antigua.html

Para hacer esto basta con indicar la url de origen en forma relativa, mientras que la url de destino sí debe ser indicada en forma absoluta.

Redirigir todas las páginas a una sola página

Al crear una web uno puede crear muchas páginas o post. Si deseamos que todos y cada uno de ellos dirijan a una única url de destino, lo podemos hacer en forma masiva. Ejemplo de esto sería:

Avances en Ingeniería de Tejidos y Medicina Regenerativa Transformando la Salud Humana En el ...
El origen de los emojis y la comunicación en la era digital Puede parecer un poco extraño comenzar ...
Ejemplo de dedicatoria de tesis Y el momento culminante de nuestra formación...

miweb.com/1 a ejemplo.com
miweb.com/2 a ejemplo.com
miweb.com/3 a ejemplo.com
miweb.com/4 a ejemplo.com

Como vemos, hay una redirecció masiva, de todas las url de un dominio a la raíz de otro dominio. Y lo logramos con sólo anexar al .htaccess esto:

redirectMatch 301 ^(.*)$ https://www.desarrolloweb.com

Redirección emparejada, o pareada

Ahora bien, quizás tenemos los mismos post y las mismas URL tanto en el origen como en el destino, quizás en otro dominio o subdominio, y deseamos hacer la redirección en forma masiva.

Un ejemplo de cómo funcionaría esto es así:

miweb.com/1 a ejemplo.com/1
miweb.com/2 a ejemplo.com/2
miweb.com/3 a ejemplo.com/3
miweb.com/4 a ejemplo.com/4

Pues bien, la solución es muy sencilla. Basta con anexar este fragmento de código:

redirectMatch 301 ^(.*)$ https://ejemplo.com$1

Se puede redireccionar tanto a un dominio como a un subdominio o subdirectorio, inclusive a un subdirectorio.

En este post hemos puesto los ejemplos con código 301 (que indica que se ha movido la url en forma permanente); sin embargo, sí es sólo temporal, podemos cambiar el 301 por el 302. Eso es todo. Espero les haya servido y, lo importante, que haya sido fácil de entender.

Bibliografía ►
El pensante.com (noviembre 18, 2013). Redirección 301 con .htaccess. Recuperado de https://elpensante.com/redireccion-301-con-htaccess/