¿Qué es y cómo se hace una Redirección 301?

Hola amigos,

cuando tenemos un a web y queremos mover una página de sitio, un directorio o incluso todo un dominio tenemos que usar las Redirecciones 301.

Generador Online de Redirecciones 301:

Si ya estáis familiarizados con lo que son y no tenéis ganas de teoría aquí tenéis un Generador Online de Redirecciones 301

¿Para qué íbamos a querer hacer una Redirection 301?

Bueno imaginad que tenemos que hacer un mantenimiento de la página y queremos apuntar a otro sitio mientras hacemos algunas pruebas o que nos hemos cansado de nuestro dominio actual y queremos ir migrando a los usuarios poco a poco a otro dominio sin que se den cuenta.

Luego son útiles cuando:

  • Quieres cambiar la URL de una página o eliminarla
  • Tienes problemas de contenido duplicado
  • Recibes visitas o enlaces en URLs que ya no existen
  • Vas a cambiar de gestor de contenidos o CMS

Estas redirecciones son comandos que nos permiten enviar a usuarios y buscadores de una URL a otra automáticamente.

¿Pierde nuestra página ranking en los buscadores?

Cuando un buscador se encuentra con una redirección 301 reacciona de esta manera:

  1. Elimina la antigua página de su índice – De esta forma la página no volverá a aparecer en las páginas de resultados.
  2. Incluye la nueva página en su índice – Para en adelante tenerla en cuenta al confeccionar los resultados de búsqueda.
  3. Transfiere el valor de la antigua página a la nueva – Y con esto me refiero a la popularidad que dan los enlaces a las páginas, la cual afecta directamente a los rankings.

Así que si te preocupa el SEO y quieres mover contenido en tu sitio, ¡DEBES USARLAS!

¿Cómo se hacen las redirecciones 301?

Para crear una nueva Redirection 301 tenemos que editar un archivo en tu servidor llamado .htaccess e introducir los comandos necesarios.

Por si no os suena, .htaccess es un archivo que controla la configuración del servidor. Se encuentra en la raíz de tu sitio y es lo primero que se carga cuando un usuario o un buscador acceden a tu sitio, antes incluso de que la página aparezca.

Para introducir redirecciones 301 en el archivo .htaccess, sigue estos pasos:

  1. Encuentra al archivo .htaccess – Conéctate mediante FTP a tu servidor (puedes usar FileZilla o CyberDuck) y busca el archivo .htaccess (normalmente está en /www/, /httpdocs//public/ /public_html/). Ten en cuenta que se trata de un archivo oculto, por lo que deberás activar la opción para ver todos los archivos en tu cliente FTP.
  2. Abre el archivo – Con cualquier editor de texto, como el bloc de notas o Notepad++.
  3. Edita el archivo – Siguiendo las instrucciones que te voy a dar más adelante.
  4. Guarda el archivo – Con la codificación ANSI para evitar errores.

¡Ten cuidado con el archivo .htaccess!

El archivo .htaccess es cosa seria. Si cometes un error al editarlo puedes provocar un desastre en tu web, así que trátalo con respeto.

Te recomiendo tomar estas precauciones:

  • Haz una copia de seguridad del archivo antes de hacer cualquier cambio
  • No cambies una sólo línea de las que ya trae a menos que sepas lo que haces
  • Prueba todas y cada una de las redirecciones introducidas, incluyendo las páginas individuales, directorios, etc.
  • Haz los cambios en las horas de menor tráfico

¿Cuánto tiempo dejar las redirecciones 301? 

En teoría, una redirección 301 es permanente y debería dejarse configurada para siempre. Pero en la práctica, es difícil mantener una redirección eternamente.

¿Cuánto tiempo como mínimo debe dejarse una redirección 301? ¿Es malo borrarla?

El analista de Google John Mueller dice que el buscador puede tardar entre 6 meses y un año en reconocer que un sitio ha cambiado de dirección, de ahí que recomienda mantener las redirecciones activas al menos un año.

Si reconocemos que la redirección es permanente, entonces lo tenemos en cuenta de cara al futuro. Por tanto, si has trasladado tu sitio y hemos llegado a reconocerlo (lo que quizá puede llevar medio año o un año), entonces puedes quitar la redirección hasta cierto punto.

Por otra parte, si borras las redirecciones y tus antiguas URL están enlazadas, conducirán hacia una página 404 o a un dominio aparcado. Para evitar al usuario esta mala experiencia, avisa a los sitios de referencia para que actualicen los enlaces a tus páginas. Google tiene una guía donde explica los pasos a seguir.

Resumiendo: mantén las redirecciones todo el tiempo posible, como mínimo un año, y asegúrate de que los enlaces a tu sitio se actualizan a la nueva versión.

Casos de redirección

A la hora de hacer redirecciones puedes encontrarte con situaciones muy variadas, y no todas se resuelven igual.

Vamos a ver varios tipo de redirecciones en cada uno de estos casos:

  • Redireccionar una página
  • Redireccionar un directorio
  • Redireccionar un dominio
  • Redireccionar una IP
  • Redireccionar de NO-www a WWW (y viceversa)
  • Redireccionar de HTTP a httpS (y viceversa)
  • Redireccionar la barra al final (/)

Veamoslos:

Redireccionar una página

Es el caso en el que quieres mover una página de una dirección a otra, sin más. Es una acción muy común cuando pretendes:

  • Cambiar el nombre a la URL
  • Mover el contenido a otra página
  • Eliminar la página

La redirección se haría así:

Redirect 301 /vieja-pagina http://www.example.com/nueva-pagina

Fíjate en que la primera URL no incluye el dominio y la otra sí. La ventaja de esta sintaxis es que puedes mover la página no sólo dentro de tu dominio, sino hacia otro distinto.

Alternativamente, puede darse el caso en el que quieras mover únicamente la página principal de tu sitio (la home), a una página interna o a otro dominio.

Entonces la redirección sería así:

RedirectMatch 301 ^/$ http://www.example.com/nueva-pagina

Redireccionar un directorio

Supongamos que tienes un directorio en tu sitio del que cuelgan otros directorios o páginas, y quieres moverlo a un directorio con otro nombre, conservando toda la estructura de directorios y páginas que cuelgan de él.

La redirección sería esta:

Redirect 301 /viejo-directorio/ http://www.example.com/nuevo-directorio/

Fijate que no sólo puedes redireccionar directorios de primer nivel, sino subdirectorios. Lo único que tendrías que hacer sería incluir la estructura completa del directorio hasta el nivel que te interese:

Redirect 301 /directorio/viejo-subdirectorio/ http://www.example.com/directorio/nuevo-subdirectorio/

Otro caso interesante sería el de mover un directorio hacía un subdirectorio más profundo, aunque la cosa ya se complica:

Redirect 301 /directorio/subdirectorio/ http://www.example.com/directorio/nuevo-subdirectorio/subdirectorio/

Ahora supongamos que tienes un directorio del que cuelgan páginas internas y has decidido librarte de ese directorio y todo lo que contiene. Esta sería la redirección adecuada:

RedirectMatch 301 ^/viejo-directorio/(.*)$ http://www.example.com/nueva-pagina

Redireccionar un dominio

Puede llegar un momento en el que el nombre de tu dominio deja de tener sentido, por lo que tienes que moverlo a otro con un nombre más adecuado. Por supuesto, quieres conservar toda la estructura de URLs, lo único que te interesa es cambiar el nombre.

Lo harías así:

Redirect 301 / http://www.example.com/

Y en el caso de que quieras redireccionar todo el contenido del viejo dominio a la página principal del nuevo:

RedirectMatch 301 (.*) http://www.example.com/

Al mover un sitio de un dominio a otro, debes acordarte de renovar el antiguo dominio junto con un plan de alojamiento para seguir conservando las redirecciones. Si se te olvida y no consigues que los enlaces que apuntan al viejo dominio cambien al nuevo, perderás el jugo de enlace que habías acumulado hasta el momento.

Redireccionar una IP

A menudo se olvida que la dirección IP de un sitio debería reconducir a la URL del dominio. De otra forma, los buscadores pueden confundirse e indexar una réplica de tu sitio para la IP del servidor, lo que es poco deseable.

Para redirecionar la IP de tu servidor a tu dominio usa la siguiente regla:

<IfModule mod_rewrite.c>
RewriteCond %{HTTP_HOST} ^198\.51\.100\.24
RewriteRule (.*) http://www.example.com/$1 [R=301,L,QSA]
</IfModule>

Al configurar la redirección, recuerda cambiar la IP del ejemplo (198.51.100.24) por la de tu servidor. Ésta puedes obtenerla con la herramienta SpyOnWeb.

Redireccionar de NO-www a WWW (y viceversa)

Esta redirección evita el problema de tener 2 versiones de un sitio web, uno en la versión www.example.com y otro en la versión example.com (sin www). Lo que hace es redireccionar todo lo que está en la versión NO-www a la versión WWW mediante la llamada redirección canónica:

<IfModule mod_rewrite.c>
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule (.*) http://www.example.com/$1 [R=301,L,QSA]
</IfModule>

Pero claro, puede ser que lo que te interese es tener tu sitio en la versión NO-www, como hago yo.

En ese caso, la redirección de WWW a No-www sería así:

<IfModule mod_rewrite.c>
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule (.*) http://example.com/$1 [R=301,L,QSA]
</IfModule>

Redireccionar de HTTP a httpS (y viceversa)

Si tienes una web segura que funciona sólo con SSL, es bueno asegurarse de que tus paginas se sirven siempre desde el protocolo HTTPS.

Para ello, emplea la siguiente regla:

<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} off
RewriteRule (.*) https://www.example.com/$1 [R=301,L,QSA]
</IfModule>

Y si has tenido una web segura durante un tiempo, pero has decidido quitar el certificado SSL, necesitaras redireccionar a la versión HTTP. En caso contrario, tus usuario se encontrarán con un molesto mensaje de error en el navegador y perderás visitas.

Aquí tienes la regla:

<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} on
RewriteRule (.*) http://www.example.com/$1 [R=301,L,QSA]
</IfModule>

Redireccionar la barra al final (/)

Puede ocurrir que tus páginas estén disponibles tanto con una barra al final como sin ella. Por ejemplo:

  • http://www.example.com/pagina
  • http://www.example.com/pagina/

Si es así, tienes una duplicidad que sólo puede resolverse redirigiendo una versión a la otra.

Para redireccionar todas las páginas sin barra a la versión con barra al final, usa la siguiente regla:

<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule (.*) http://www.example.com/$1/ [R=301,L,QSA]
</IfModule>

Y para hacerlo al revés y así quitar la barra del final, usa esta otra regla:

<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)/$ http://www.example.com/$1 [R=301,L,QSA]
</IfModule>

Imprescindible para que las redirecciones funcionen

Para asegurarte de que las redirecciones funcionan, necesitas implementarlas sobre el archivo .htaccess, en un servidor web Apache, y con la función mod rewrite activada.

Para ello, incluye el siguiente código al inicio del archivo:

Options +FollowSymlinks
RewriteEngine on

Fuente: http://deteresa.com/redireccion-301/#que-es-una-redireccion-301 

 

 

También te podría gustar...

Deja un comentario

Tu dirección de correo electrónico no será publicada.