Redireccionamientos 301 de urls con espacios en .htaccess

Flecha

Fotografía: Ian Muttoo (Creative Commons)

Cuando migramos una web de un domino a otro distinto o efectuamos una modificación en la estructura de enlaces de un sitio formado, por ejemplo, por urls con sufijos HTML, debemos hacer redireccionamientos. Estos van en el fichero .htaccess y sirven para indicarle a los robots de Google, la correspondencia entre las antiguas páginas y su nueva ubicación. Así evitamos la proliferación de errores 404 y pasamos la mayor parte del SEO que tengan estos contenidos.

Con el tiempo, Google acabará eliminando los enlaces antiguos, aunque doy fe de que tarda bastante en llevarlo a cabo. En guías de SEO se señalan diversos plazos, algunos de pocos meses, pero he comprobado en entradas redireccionadas desde hace años que, al quitar su código, Google Webmaster me notificaba inmediatamente un error 404. Si no tenemos demasiados, no ocurre nada, sin embargo considero que lo mejor es dejar las redirecciones permanentemente y esto resulta fundamental para las páginas que reciban enlaces desde otros sitios.

Existen muchos tutoriales que explican los diferentes tipos de redireccionamiento, pero en este artículo me voy a detener en un caso particular, sobre el que hay poca información. Se trata de las urls con espacios, las cuales habremos de situar entre comillas simples en .htaccess, para que sean interpretadas de manera correcta. Lo vemos con dos ejemplos:

– La modificación es dentro del mismo dominio. Aquí podemos utilizar direcciones relativas:

Redirect 301 '/antigua pagina.html' /nueva-pagina/

 
– Si es hacia un nuevo dominio, insertamos la url completa de destino:

Redirect 301 '/antigua pagina.html' https://www.nuevodominio.com/nueva-pagina/

 
Los navegadores usan los caracteres %20 para los espacios en blanco, siendo ésta una circunstancia que debemos ignorar, pues no va a funcionar una línea de código así:

Redirect 301 '/antigua%20pagina.html' https://www.nuevodominio.com/nueva-pagina/

 
Por último, comentar que ha de estar activado el mod_rewrite de Apache, para poder redireccionar. En caso de que lo esté, el archivo .htaccess contendrá la siguiente línea:

RewriteEngine On