Redirección 301. Una herramienta SEO imprescindible

Redirección 301 para mejorar el SEO

Qué es una redirección

Cuando pretendemos acceder a una URL (web1.com) a través de nuestro navegador web y de forma automática se nos abre una URL diferente (web2.com) se dice que esa URL (web1.com) está redirigida.

La redirección es un recurso, que los desarrolladores web usamos cuando necesitamos cambiar una URL conocida por otra nueva. Cuando digo conocida me refiero a una URL que está en uso y los buscadores han indexado, por lo tanto, está generando visitas.

Si tenemos una página web y cambiamos su ruta de acceso, cuando un usuario quiera acceder va a recibir un error HTTP 404, que significa que esa dirección no se ha encontrado, para evitar que esto ocurra tenemos que redirigir nuestra URL anterior a la nueva.

Redirección 301 - Permanente

Cuando el cambio de la URL es definitiva o permanente se utiliza la redirección 301. Este tipo de redirección indica a los navegadores, y sobre todo a los buscadores que el cambio es definitivo. La dirección anterior ya no es válida y la hemos cambiado por la nueva.

Redirección 302 - Temporal

Tenemos la posibilidad de realizar una redirección temporal. Indicamos a los robots de los buscadores que el cambio no es permanente. Su uso puede ser, por ejemplo, a la hora de solucionar incidencias técnicas en nuestra web o para ciertas campañas de marketing durante unas fechas concretas.

Cómo influye la redirección 301 en el SEO

Para entender el motivo por el que la redirección 301 es tan importante para el SEO de una web es necesario comprender el concepto de Link-juice explicado en el artículo anterior, que define cómo se transfiere la autoridad de nuestra web entre los distintos enlaces.

Cada página de nuestra web tiene una autoridad o popularidad conseguida con el paso del tiempo, debido al trabajo realizado para conseguir posicionar lo mejor posible nuestra web. Esa autoridad está vinculada a su URL, si la URL cambia la autoridad se pierde, aunque el contenido sea el mismo.

Para evitar que esto ocurra, tenemos que indicar a los buscadores que hemos cambiado esa URL. Con una redirección 301 conseguimos que cuando el robot pase por nuestra URL antigua transfiera esa autoridad, o al menos gran parte de ella, a la nueva dirección.

¿Cuándo es necesario usar redirección 301?

Es necesario saber que cualquier cambio en la URL, por mínimo que sea, implica que las URLs sean diferentes.

Por ejemplo, para los buscadores, url1.com es diferente a www.url1.com. De igual forma http://url1.com también es diferente a https://url1.com.

Los casos más comunes en los que podemos necesitar echar mano de la redirección 301 son los siguientes:

Cambio de dominio

Uno de los motivos por los que podemos necesitar redireccionar nuestra web es por un cambio de dominio. Un ejemplo puede ser si tenemos una web con un dominio regional, por ejemplo web1.es y queremos cambiar a uno genérico, web.com.

Otro caso común es cuando tenemos un blog en alguna plataforma tipo wordpress.com o blogger y queremos migrar a un dominio propio sin perder autoridad.

En el caso de querer migrar desde wordpress.com a un dominio propio, para mantener la redirección 301 habrá que abonar una cuota anual.

Migración a https

Últimamente, tras las recomendaciones de Google sobre la necesidad de la navegación segura (SSL), la migración de la página de http a https es el caso mas común donde tenemos que utilizar redirección 301 de forma correcta.

Si tu web es una tienda online o similar, el paso a https es obligado, mas tarde o mas temprano será necesario contratar un buen certificado SSL y navegar bajo https. Utilizar una redirección 301 es fundamental para que los buscadores no detecten contenido duplicado al tener todas las páginas de la web accesibles bajo http y https.

Selección de la versión preferida (con o sin www)

Uno de los grandes errores en muchas web es no definir la versión preferida para la navegación, siendo esta accesible tanto con www como sin ellas.

Es decir, webs en las que podemos navegar accediendo tanto con la url del tipo www.web1.com como web1.com.

Si no indicamos mediante redirección 301 cual es la versión que queremos que se indexe los robots van a indexar las dos versiones, por lo que tendremos contenido duplicado en todas las páginas de nuestra web.

Cambio en las URL para que sean amigables

El paso de la utilización de url no amigable (www.url1.com?id_pais=35) a url amigable (www.url1.com/pais/alemania) también se debe realizar con una redirección 301.

En estos casos, y en cualquier otro en el que una misma página de nuestra web sea accesible con distintas versiones de URL, también es conveniente definir la url canónica, que veremos en otro post mas adelante.

Cómo hacer redirección 301

La forma recomendable de realizar la redirección 301 es desde el servidor. No estoy muy seguro de que las redirecciones por javascript o HTML (meta refresh) tengan la misma efectividad a la hora de la transferencia de autoridad que las redirecciones realizadas desde el servidor.

Redirección mediante .htaccess

El archivo .htaccess es un archivo de configuración de los servidores apache. Es una herramienta muy potente que nos permite configurar ciertas características de nuestro servidor web con las que podemos optimizar tanto el rendimiento de nuestra web como la seguridad.

Es el lugar más adecuado para realizar las redirecciones 301, es necesario dominar el uso de las expresiones regulares para poder configurarlo correctamente, pero existen códigos predefinidos para las situaciones más genericas que podemos utilizar en nuestro .htaccess.

Lo primero es localizar el fichero .htaccess, que se encuentra en el directorio principal donde se aloja nuestra web. Antes de realizar ninguna modificación sobre este archivo es recomendable realizar una copia del original.

Un ejemplo del código que debemos incluir en nuestro .htaccess para forzar la navegación por https sería:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

Redirección PHP

En el caso de que no sea posible establecer una regla para poder crear una expresión regular que nos permita realizar la redirección desde .htaccess podemos utilizar PHP.

Para hacer una redirección en PHP se utiliza la funcion header, es muy importante que la función header sea lo primero que se envía al navegador. Se puede realizar previamente cualquier consulta a la base de datos y realizar cualquier operación con los datos obtenidos, pero la primera información que enviaremos al navegador será la cabecera indicando que la ruta ha cambiado de forma permanente.

Hay que tener cuidado con los espacios. Un espacio (fuera del código PHP) puede generar un "echo" y enviar un código de status 200, que indica al navegador que la url es correcta, no admitiendo nuestro pretendido código 301 que enviamos posteriormente, con lo cual la redirección no será válida.

La estructura para redireccionar en PHP es la siguiente:

header( "HTTP/1.1 301 Moved Permanently" ); 
header( "Location: url1.com");

En PHP la función header("Location: url.com"); envía una redirección temporal 302, por eso necesitamos la primera línea forzando que la redirección sea permanente (301).

Para comprobar si hemos realizado correctamente las redirecciones podemos utilizar la siguiente herramienta online redirect checker

Deja un comentario

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