Para hacer una redirección 301 en .htaccess, abre ese archivo en la raíz de tu sitio y agrega la línea Redirect 301 /antigua-url https://tudominio.com/nueva-url. Eso es todo lo que necesitas en la mayoría de los casos.
A continuación te explico cada escenario con ejemplos listos para copiar, para que no cometas errores que afecten tu posicionamiento.
¿Qué es una redirección 301 y para qué sirve?
Una redirección 301 le dice al navegador y a los motores de búsqueda que una URL ha cambiado de forma permanente. El código de estado HTTP 301 transfiere aproximadamente el 90–99 % del "link juice" o autoridad de SEO de la URL antigua a la nueva.
Se usa principalmente en tres situaciones:
- Cambias la estructura de URLs de tu sitio (por ejemplo, de
/blog/post1a/articulos/post1). - Migras de HTTP a HTTPS.
- Fusionas varios dominios o páginas duplicadas en una sola URL canónica.
Si no configuras la redirección, los visitantes verán un error 404 y Google perderá el rastreo de tu contenido indexado.
Cómo abrir y editar el archivo .htaccess
El archivo .htaccess vive en la raíz pública de tu hosting (normalmente public_html/). Puedes editarlo de tres formas:
- cPanel → Administrador de archivos: navega a
public_html, activa "Mostrar archivos ocultos" y haz clic en.htaccess→ Editar. - Cliente FTP (FileZilla): conéctate a tu servidor, muestra archivos ocultos (Servidor → Forzar mostrar archivos ocultos) y descarga el archivo para editarlo localmente.
- SSH: si tu plan lo permite, usa
nano public_html/.htaccess.
Antes de tocar el archivo, descarga una copia de respaldo. Un error de sintaxis en .htaccess provoca un error 500 en todo el sitio.
Sintaxis básica: redirección 301 simple
Hay dos formas nativas de hacer redirecciones en Apache dentro de .htaccess:
Opción A — Módulo mod_alias (sin RewriteEngine)
Redirect 301 /pagina-antigua.html https://www.tudominio.com/pagina-nueva/
Ideal para redirigir una o pocas URLs concretas. No requiere que mod_rewrite esté activo.
Opción B — Módulo mod_rewrite (más flexible)
RewriteEngine On
RewriteRule ^pagina-antigua\.html$ /pagina-nueva/ [R=301,L]
Usa esta opción cuando necesites patrones, expresiones regulares o condiciones adicionales con RewriteCond.
Casos de uso frecuentes con ejemplos
1. Redirigir HTTP a HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Este bloque detecta cualquier visita sin HTTPS y la redirige a la versión segura. La mayoría de los hostings lo agrega automáticamente al instalar el certificado SSL, pero si no es así, este código funciona en cualquier servidor Apache.
2. Redirigir www a sin-www (o viceversa)
# De www a sin-www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.tudominio\.com [NC]
RewriteRule ^(.*)$ https://tudominio.com/$1 [R=301,L]
Invertirlo es tan sencillo como intercambiar los dominios en ambas líneas. Elige un formato canónico y mantenlo consistente siempre.
3. Redirigir una sección completa
RewriteEngine On
RewriteRule ^blog/(.*)$ /articulos/$1 [R=301,L]
El comodín (.*) captura todo lo que venga después de /blog/ y lo pega al final de la nueva ruta. Muy útil en migraciones de plataforma.
4. Redirigir un dominio entero a otro
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?dominio-viejo\.com [NC]
RewriteRule ^(.*)$ https://www.dominio-nuevo.com/$1 [R=301,L]
Indispensable cuando cambias de nombre de marca o consolidas varios dominios en uno.
Errores comunes y cómo evitarlos
| Error | Causa | Solución |
|---|---|---|
| Error 500 tras guardar | Sintaxis incorrecta en el archivo | Valida la sintaxis con apachectl configtest o restaura el respaldo |
| Bucle de redirección infinito | La URL destino vuelve a activar la misma regla | Agrega RewriteCond %{HTTPS} off o usa condiciones más precisas |
| La redirección no funciona en local | AllowOverride None en el VirtualHost |
Cambia a AllowOverride All en la configuración del servidor local |
| Google no actualiza las URLs | Caché de rastreo (puede tardar semanas) | Envía el sitemap actualizado en Search Console y usa la herramienta de inspección de URL |
Si necesitas ayuda para configurar tu entorno de hosting desde cero, en elenlace.com ofrecemos planes de hospedaje con soporte técnico incluido para tareas exactamente como esta.
Conclusiones clave
- Una redirección 301 es permanente y transfiere la autoridad SEO de la URL antigua a la nueva.
- Edita el
.htaccessdesde cPanel, FTP o SSH; siempre guarda un respaldo primero. - Usa
Redirect 301para URLs únicas yRewriteRule [R=301,L]para patrones o condiciones complejas. - Los casos más comunes son HTTP→HTTPS, www→sin-www, cambios de slug y migraciones de dominio.
- Verifica el resultado con la herramienta de inspección de URLs de Google Search Console.
¿Vas a migrar tu sitio a HTTPS o a un nuevo dominio? El equipo de elenlace.com puede encargarse de la configuración completa para que no pierdas ni un punto de posicionamiento. Visita también nuestra sección de glosario de hosting para más guías técnicas.
Preguntas frecuentes
¿Cuánto tiempo tarda Google en procesar una redirección 301?
Google puede tardar desde unos días hasta varias semanas en rastrear y actualizar las URLs en su índice. Puedes acelerar el proceso enviando el sitemap actualizado desde Google Search Console y usando la herramienta de inspección de URL para solicitar el rastreo de las páginas clave.
¿La redirección 301 afecta el posicionamiento SEO?
Bien implementada, la redirección 301 preserva entre el 90 % y el 99 % de la autoridad de enlace. Una redirección 302 (temporal) no transfiere autoridad, por lo que usar el código incorrecto sí penaliza el posicionamiento.
¿Puedo hacer varias redirecciones 301 en el mismo .htaccess?
Sí. Puedes agregar tantas líneas Redirect 301 o bloques RewriteRule como necesites. Apache las procesa de arriba hacia abajo, por lo que el orden importa cuando las reglas pueden solaparse.
¿Qué pasa si no tengo acceso al .htaccess?
Si tu servidor no es Apache (por ejemplo, usa Nginx), el archivo .htaccess no aplica. En Nginx deberás usar directivas return 301 dentro del bloque server de la configuración del virtual host, y en ese caso necesitarás acceso SSH o de administrador al servidor.
Compara proveedores
Otros proveedores y guías que vale la pena comparar: