≡En resumen
- Usa 301 (o 308) cuando el cambio es permanente y 302 (o 307) cuando es temporal: Google solo trata las permanentes como señal fuerte de canónica.
- Las redirecciones del lado del servidor (.htaccess, Nginx, PHP) son las más fiables; JavaScript solo si no hay otra opción.
- Redirige cada URL a su equivalente más parecida, no todo a la página de inicio.
- Google recomienda mantener las redirecciones de una migración al menos un año y evitar las cadenas: lo ideal es ir directo al destino final.
- Después de redirigir, actualiza los enlaces internos, el sitemap y, si cambias de dominio, usa la herramienta de cambio de dirección de Search Console.
01 Qué es una redirección 301 y cuándo usarla
Esta guía es el cómo se hace, con código listo para adaptar. Si buscas el concepto con más detalle, tienes la entrada del diccionario sobre qué es una redirección 301. Aquí vamos a lo práctico: cuándo usarla, cómo configurarla en cada servidor y cómo comprobar que no has roto nada.
Una redirección 301 bien hecha es una de las tareas técnicas que más protegen el posicionamiento. Una mal hecha, o una que falta, es una de las causas más habituales de caídas de tráfico tras un rediseño o una migración, y es lo primero que revisamos en cualquier auditoría SEO posterior a un cambio de web.
Cambio de URL
Cambias el slug de una página o reorganizas las categorías de tu web.
Cambio de dominio
Pasas de dominio-antiguo.com a dominio-nuevo.com, o de un .es a un .com.
HTTP a HTTPS y www
Unificas todas las variantes del dominio en una sola versión canónica.
Fusión de contenidos
Unes varios artículos que competían por la misma búsqueda en uno solo.
Página eliminada con sustituta
Retiras un producto o servicio y existe otro equivalente al que enviar al usuario.
Cambio de CMS
Migras de una plataforma a otra y cambia el formato de las URL.
02 Redirección 301 vs 302, 307 y 308
No todas las redirecciones son iguales para Google. Las permanentes le indican que la nueva URL debe mostrarse en los resultados; las temporales le dicen que la original volverá, así que tiende a mantenerla. Elegir mal el código es un error frecuente: muchas herramientas y CMS crean una redirección 302 por defecto.
| Tipo | Carácter | Cuándo usarla | Señal para Google |
|---|---|---|---|
| 301 Moved Permanently | Permanente | Cambios definitivos de URL o de dominio | La destino es la canónica |
| 308 Permanent Redirect | Permanente | Igual que la 301, pero conservando el método HTTP (útil en formularios y APIs) | La destino es la canónica |
| 302 Found | Temporal | Promociones, mantenimiento, pruebas A/B | Suele mantener la URL original |
| 307 Temporary Redirect | Temporal | Igual que la 302, conservando el método HTTP | Suele mantener la URL original |
| Meta refresh con 0 segundos | Permanente | Solo si no tienes acceso al servidor | Google la trata como permanente |
| Redirección con JavaScript (location) | Permanente | Último recurso, cuando no hay alternativa en el servidor | Google la trata como permanente, pero solo la ve al renderizar la página: es menos fiable |
03 Antes de redirigir: crea un mapa de redirecciones
Si solo cambias una URL, basta con una regla. Si rediseñas la web, cambias de CMS o de dominio, necesitas antes un mapa: una tabla con cada URL antigua y su nueva dirección. Es el documento más importante de una migración.
-
1
Haz inventario de las URL actuales
Combina un rastreo completo de la web, las páginas con clics en Search Console y las URL que reciben enlaces externos.
-
2
Asigna cada URL antigua a su equivalente
Relación uno a uno siempre que sea posible: cada página, a la nueva página con el mismo contenido o el más parecido.
-
3
Decide qué no se redirige
Si una página desaparece sin sustituta, es mejor devolver un 404 o un 410 que redirigirla a algo que no tiene relación.
-
4
Prueba en un entorno de preproducción
Aplica las reglas en una copia de la web y comprueba cada URL del mapa antes de publicar.
-
5
Publica y monitoriza
Tras el lanzamiento, revisa a diario durante las primeras semanas los errores 404 y la cobertura en Search Console.
04 Redirección 301 en .htaccess (Apache)
La mayoría de hostings compartidos usan Apache, que lee las reglas del archivo .htaccess en la raíz de la web. Antes de editarlo, descarga una copia: un error de sintaxis puede dejar la web entera con un error 500. Coloca tus reglas antes del bloque de WordPress si lo hay.
Redirect 301 /servicios-antiguos/ https://www.tudominio.com/servicios/
La ruta de origen empieza por barra y es relativa a la raíz; el destino es la URL completa. Es la forma más sencilla y la más clara para redirecciones sueltas.
RewriteEngine OnRewriteCond %{HTTPS} off RewriteCond %{HTTP_HOST} ^tudominio\.com$ RewriteRule ^(.*)$ https://www.tudominio.com/$1 [L,R=301]
Envía en un solo salto cualquier petición en http o sin www a la versión https con www, conservando la ruta. Si tu hosting está detrás de un proxy o CDN, la condición de HTTPS puede ser distinta: consúltalo antes.
RewriteEngine OnRewriteCond %{HTTP_HOST} ^(www\.)?dominio-antiguo\.com$ RewriteRule ^(.*)$ https://www.dominio-nuevo.com/$1 [L,R=301]
Cada URL del dominio antiguo va a la misma ruta del nuevo. Solo funciona si la estructura de URL se mantiene; si cambia, añade antes reglas específicas por URL.
RedirectMatch 301 ^/blog/(.*)$ https://www.tudominio.com/noticias/$1
Todo lo que estaba bajo /blog/ pasa a /noticias/ con el mismo nombre de página.
05 Redirección 301 en WordPress
En WordPress puedes escribir las reglas en el .htaccess como en el apartado anterior, pero lo más cómodo es gestionarlas desde el panel con un plugin. Así cualquier persona del equipo puede crear redirecciones sin tocar archivos del servidor.
| Opción | Coste | Ventajas |
|---|---|---|
| Plugin Redirection | Gratuito | Más de 2 millones de instalaciones activas, registro de errores 404, expresiones regulares e importación y exportación en formato .htaccess, Nginx y CSV |
| Rank Math | Módulo de redirecciones incluido en la versión gratuita | Si ya usas Rank Math como plugin SEO, no necesitas otro plugin |
| Yoast SEO | El gestor de redirecciones solo está en la versión Premium | Crea la redirección automáticamente al cambiar una URL o borrar una entrada |
| Reglas en .htaccess | Gratuito | Más rápido para reglas masivas; requiere acceso al servidor y cuidado con la sintaxis |
-
1
Instala el plugin
En Plugins > Añadir nuevo, busca Redirection, instálalo y actívalo. El asistente inicial te ofrece vigilar los cambios de enlaces permanentes y registrar los 404.
-
2
Crea la redirección
En Herramientas > Redirection, escribe la URL de origen (la ruta antigua) y la URL de destino, y comprueba que el código es 301.
-
3
Revisa el registro de 404
El plugin guarda las URL que devuelven error. Revísalo cada semana para detectar enlaces rotos que merezca la pena redirigir.
Nosotros solemos recomendar Redirection cuando la web no usa Rank Math: es gratuito, está mantenido desde hace más de una década y permite exportar las reglas a .htaccess o Nginx si más adelante quieres llevarlas al servidor.
06 Redirección 301 en Nginx y en PHP
Nginx no usa .htaccess: las redirecciones se escriben en el bloque server de la configuración del sitio y hay que recargar el servicio para aplicarlas. Si tu hosting es gestionado, pídelo al soporte o usa el panel que te ofrezca.
location = /servicios-antiguos/ { return 301 https://www.tudominio.com/servicios/;}
server { listen 80; server_name tudominio.com www.tudominio.com; return 301 https://www.tudominio.com$request_uri;}
La variable $request_uri conserva la ruta y los parámetros de la petición original.
rewrite ^/blog/(.*)$ /noticias/$1 permanent;
La palabra permanent genera un 301. Si no tienes acceso al servidor pero sí al código, en PHP puedes enviar la cabecera antes de cualquier salida:
header('Location: https://www.tudominio.com/nueva/', true, 301);exit;
07 Cómo comprobar que la redirección 301 funciona
Que el navegador llegue a la página nueva no demuestra que la redirección sea correcta: podría ser una 302, pasar por dos saltos o perder los parámetros. Comprueba siempre el código de respuesta.
- ✓Desde el terminal, ejecuta curl -I con la URL antigua: debe devolver 301 y una cabecera Location con la URL nueva.
- ✓La URL de destino debe responder con un 200, no con otra redirección.
- ✓Rastrea la lista de URL antiguas en modo lista con Screaming Frog para revisarlas todas de una vez.
- ✓En Search Console, usa la inspección de URL con la dirección nueva para comprobar que Google puede indexarla.
- ✓Revisa que no haya bucles: A redirige a B y B vuelve a A.
- ✓Comprueba las variantes: con y sin www, con y sin barra final, http y https.
08 Redirecciones 301 y SEO: cómo no perder posicionamiento
Una 301 le indica a Google que traslade las señales de la URL antigua a la nueva, pero el proceso no es instantáneo. Google advierte que en una web mediana pueden pasar unas semanas o más hasta que muestre las URL nuevas en lugar de las antiguas, y que es normal ver fluctuaciones durante ese tiempo.
| Recomendación | Detalle |
|---|---|
| Mantén las redirecciones | Todo el tiempo posible, en general al menos un año |
| Evita las cadenas | Googlebot sigue hasta 10 saltos, pero Google aconseja redirigir directamente al destino final y, si no es posible, que la cadena tenga idealmente no más de 3 saltos y siempre menos de 5 |
| Actualiza los enlaces internos | Que todos apunten a la URL nueva, sin pasar por la redirección |
| Envía un sitemap nuevo | Con las URL definitivas, desde Search Console |
| Usa la herramienta de cambio de dirección | Solo al cambiar de dominio o subdominio; no hace falta para pasar de http a https ni para añadir o quitar www |
Si después de una migración ves que el tráfico no se recupera, revisa la guía sobre la caída de tráfico tras una migración y otros motivos de pérdida de posiciones. Una migración bien planificada, con el mapa de redirecciones como pieza central, es la mejor forma de mejorar el posicionamiento en buscadores en lugar de ponerlo en riesgo.
09 Errores comunes con las redirecciones 301
| Error | Consecuencia | Solución |
|---|---|---|
| Usar 302 para un cambio definitivo | Google puede seguir mostrando la URL antigua | Cambia el código a 301 o 308 |
| Cadenas de redirecciones | Más tiempo de carga y riesgo de que Google no llegue al destino | Apunta cada URL antigua directamente al destino final |
| Redirigir todo a la home | Posible soft 404 y pérdida de las señales de cada página | Relación uno a uno con la página equivalente |
| Quitar las redirecciones a los pocos meses | Los enlaces externos antiguos vuelven a dar 404 | Mantenlas al menos un año, idealmente de forma indefinida |
| Olvidar los enlaces internos | La web sigue enlazando a URL que redirigen | Actualiza menús, contenidos y sitemap |
| Bloquear en robots.txt las URL antiguas | Google no puede rastrearlas y no ve la redirección | Deja rastrear las URL antiguas mientras tengan redirección |
Las redirecciones mal hechas están entre los errores SEO que más posicionamiento cuestan, y la mayoría se evitan planificando antes de tocar nada. Si estás preparando un rediseño, lo ideal es que el equipo de diseño y desarrollo web y el de SEO trabajen juntos desde el principio, y que alguien revise el mapa de redirecciones antes y después del lanzamiento.
Preguntas frecuentes
Es una respuesta del servidor que indica que una URL se ha trasladado de forma permanente a otra. El navegador lleva al usuario a la nueva dirección y Google entiende que debe mostrar la nueva URL en sus resultados.
La 301 es permanente y Google la usa como señal de que la nueva URL es la canónica. La 302 es temporal, así que Google tiende a mantener la URL original en sus resultados.
Si la redirección apunta a una página equivalente, Google traslada las señales a la nueva URL, aunque puede haber fluctuaciones durante unas semanas. Se pierde posicionamiento cuando se redirige a páginas sin relación, se encadenan redirecciones o se olvidan URL.
Google recomienda mantenerlas todo el tiempo posible y, en general, al menos un año. Si la URL antigua sigue recibiendo enlaces o visitas, lo mejor es no retirarla nunca.
Añadiendo reglas al archivo .htaccess si tu servidor usa Apache, antes del bloque de WordPress, o en la configuración de Nginx si usa Nginx. Haz siempre una copia del archivo antes de editarlo.
Devuelve un 404 o un 410. Redirigirla a la página de inicio o a otra sin relación no aporta valor y Google puede tratarla como un soft 404.
Googlebot puede seguir hasta 10 saltos en una cadena, pero Google recomienda redirigir directamente al destino final y, si no es posible, que la cadena tenga idealmente no más de 3 saltos y menos de 5.
Con el comando curl -I y la URL, que muestra el código de respuesta y la cabecera Location, con extensiones de navegador que muestran las cabeceras HTTP o con un rastreador como Screaming Frog.
Fuentes consultadas
Sobre el autor
Germán Gutiérrez
Development Manager en appyweb
Dirige el equipo de desarrollo de appyweb: aplicaciones web y móviles, SaaS, integraciones y arquitectura de software.
Ver perfil en LinkedIn ↗