28/09/2018

Estrenar nueva página web suele ser un gran placer. Normalmente tendremos una herramienta muy potente entre manos. Pero por varias razones, antes o después resulta indispensable renovar la web.

La nueva página web resolverá todas las carencias de la vieja web. Pero seguro que hay cosas aprovechables. Más allá de los contenidos, una página web que lleva en marcha unos cuanto años, habrá cuajado una base en el posicionamiento, y en el momento del cambio es importante no perder la base, al mismo tiempo de evitar el error 404.

Cuándo se genera el error 404

El famoso error 404, viene a ser el mensaje que devuelve el servidor. Y, ¿cuándo devuelve este mensaje? Cuando la página que se quiere cargar o no existe.

Si junto al desarrollo de la nueva página web se rehacen la estructura y las URL, los enlaces que están guardados en los buscadores no encontrarán las viejas páginas, y por lo tanto se genera un error 404.

Más allá de que la aparición de este error genere una mala experiencia para la persona usuaria, lo que realmente genera es un gran perjuicio en el posicionamiento de la página. Google y otros buscadores lo puntúan negativamente, y eso afecta directamente en el posicionamiento, negativamente.

La solución es la redirección 301

Para que esto no suceda, hay que realizar la redirección 301. Y, ¿de qué trata la redirección 301? Pues a través del código que añadamos en la web, se indica a los buscadores y los navegadores que la URL vieja que se está buscando, se ha «movido permanentemente» a otra URL. Así, los buscadores y los navegadores, «aprenden» que esas páginas tienen nueva dirección, evitando el efecto negativo que decíamos.

Y, ¿cómo introducir la redirección 301? Hay varias maneras para ello. Os mostramos las dos maneras más habituales.

Redirección 301 a través del fichero .htaccess

El archivo .htaccess se utiliza con varios objetivos. Este archivo se encuentra en la carpeta raíz del servidor, y es un archivo que el servidor siempre lo lee antes de cargar cualquier otra cosa.

Para nuestro caso, podemos realizar la redirección la podemos realizar a través de dos comandos:

# Esta es la forma de introducir comentarios
# Activamos la redirección, y establecemos su base
RewriteEngine On
RewriteBase /
# Redirect: para utilizarlo cuando hagamos una redirección individual de páginas simples
Redirect 301 /una-url-de-la-vieja-web.html https://domeinua.eus/una-url-de-la-nueva-web/
Redirect 301 /otra-url-de-la-vieja-web.html https://domeinua.eus/otra-url-de-la-nueva-web/

# RedirectMatch: para utilizarlo cuando queremos redirigir páginas que siguen un patrón
# Con la expresión regular (.*), se recoge la parte variable de las URL (cada entrada del blog)
# Con el comando $1 se recoge la parte variable de las URL (cada entrada del blog)
RedirectMatch 301 /blog-web-vieja/(.*) http://domeinua.eus/blog-web-nueva/$1

Redirección 301 a través de la función header() de PHP

Si realizamos la redirección a través de PHP, lo conseguiremos con la función header() y utilizando la cabecera ‘Location’.

Esta función la tenemos que colocar al inicio del archivo viejo, antes que cualquier otro comando o texto. Este es un ejemplo:

<?php
// Redirección 301: "movido permanentemente"
header( 'Location: /una-url-de-la-nueva-web/', TRUE, 301 );

?>

Introducimo 3 variables a la función header():

  • ‘Location: /una-url-de-la-nueva-web/’: nueva URL, con cabecera ‘Location’
  • TRUE: elimina cualquier otra cabecera enviada anteriormente
  • 301: mensaje que se les indica a los buscadores y navegadores

Si es la primera vez, tranquilidad

Si es la primera vez que realizas una redirección de este tipo, tranquilidad, es bastante sencillo. El código a introducir no es mucho, y el resultado se ve al instante. ¡Suerte!