🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo configurar el archivo .htaccess para redirecciones en Apache

Actualizado el 1 de abril de 2026

¿Alguna vez has intentado cambiar la URL de una página y has visto cómo los visitantes llegaban a un molesto error 404? O quizás has movido tu sitio web de un dominio a otro y quieres que todos los enlaces antiguos sigan funcionando. La solución a estos problemas (y a muchos más) se llama htaccess redirecciones.

Este archivo, aunque su nombre suene a magia oscura para los no iniciados, es una herramienta poderosa y, con esta guía, descubrirás que es más fácil de lo que piensas. Vamos a desglosar, paso a paso y sin tecnicismos innecesarios, cómo configurar el archivo .htaccess para redirecciones en tu servidor Apache.

Piensa en el archivo .htaccess como el "guardia de tráfico" de tu sitio web. Le dice al servidor qué hacer cuando alguien pide una página específica. Con él, puedes establecer reglas claras: "Si alguien llega a esta dirección antigua, llévalo a esta nueva". Vamos a aprender a darle esas órdenes.

¿Qué es exactamente el archivo .htaccess y por qué es tan importante?

Antes de ensuciarnos las manos con código, es fundamental entender qué es este archivo. .htaccess es un archivo de configuración a nivel de directorio que utilizan los servidores web Apache. Su nombre es una abreviación de hypertext access (acceso de hipertexto). Es un archivo de texto plano, pero su poder es inmenso.

Este archivo vive en la raíz de tu sitio web (a menudo en una carpeta llamada public_html o www) y sus directivas aplican al directorio donde se encuentra y a todos los subdirectorios que cuelgan de él. Es la herramienta perfecta para personalizar el comportamiento de tu servidor sin necesidad de tocar la configuración global de Apache, algo que normalmente está restringido a los administradores del sistema.

¿Por qué es crucial dominarlo? Porque te permite:

  • Redirigir URLs: Cambiar la ubicación de una página sin perder visitantes ni posicionamiento SEO.
  • Personalizar errores: Mostrar una página de "Error 404" bonita y útil en lugar de la fea página por defecto.
  • Proteger tu web: Bloquear el acceso a ciertas áreas, prevenir el hotlinking de imágenes o crear contraseñas para directorios.
  • Mejorar el rendimiento: Comprimir archivos para que tu web cargue más rápido.

En esta guía, nos centraremos en la primera función, la más solicitada: las redirecciones. Dominar las Apache htaccess reglas de redirección es una habilidad esencial para cualquier propietario de un sitio web.

Preparando el terreno: Cómo localizar y editar tu archivo .htaccess

Un error común es buscar el archivo .htaccess y no encontrarlo. No te preocupes, es normal. A menudo está oculto porque comienza con un punto (.) y los administradores de archivos lo ocultan por defecto.

### Paso 1: Accede a tu panel de control o FTP

La forma más común de acceder a tu archivo es a través del administrador de archivos de tu panel de hosting (cPanel, Plesk, o el panel de tu proveedor). Si usas un gestor como "Syspanel" (recuerda, el puerto de acceso es el 2106), busca la sección de "Administrador de archivos" o "File Manager". Alternativamente, puedes usar un cliente FTP como FileZilla para conectarte a tu servidor.

### Paso 2: Muestra los archivos ocultos

Una vez dentro de la carpeta raíz de tu sitio (normalmente public_html), busca un icono o una casilla que diga "Mostrar archivos ocultos" o "Configuración". Actívalo. Ahora deberías ver el archivo .htaccess.

### Paso 3: Haz una copia de seguridad (¡Crítico!)

Este es el paso más importante de todos. Antes de tocar nada, descarga una copia de tu .htaccess actual a tu ordenador. Si algo sale mal, puedes subirlo de nuevo y restaurar tu sitio en segundos. Un error en este archivo puede hacer tu web inaccesible, así que la copia de seguridad es tu red de seguridad.

### Paso 4: Edita el archivo

Haz clic derecho sobre el archivo y selecciona "Editar" o "Edit". Se abrirá un editor de texto. Si el archivo no existe, puedes crearlo. Nómbralo exactamente .htaccess (sin "archivo.txt" ni nada parecido). Asegúrate de que el editor no añada una extensión extra.

La reina de las redirecciones: La Redirección 301 (Redirección Permanente)

Ahora sí, vamos al grano. La redirección 301 htaccess es la más importante y la que deberías usar en el 95% de los casos. ¿Por qué? Porque le dice tanto al navegador del usuario como a los motores de búsqueda (Google, Bing, etc.) que la página se ha movido de forma permanente a una nueva ubicación.

¿Por qué es tan buena para el SEO?

  • Transfiere la "autoridad": Transfiere casi todo el "jugo" o autoridad de la página antigua a la nueva, lo que ayuda a mantener tu posicionamiento en Google.
  • Evita el contenido duplicado: Le dice a Google que no indexe la versión antigua, sino la nueva, evitando penalizaciones.
  • Mejora la experiencia de usuario: El visitante que haga clic en un enlace antiguo será llevado automáticamente a la página correcta, sin errores.

### Cómo implementar una redirección 301 básica

El código es sorprendentemente sencillo. Todo lo que necesitas es la directiva Redirect 301. La sintaxis es la siguiente:

Redirect 301 /ruta-antigua/ https://www.tudominio.com/ruta-nueva/

Vamos a desglosarlo:

  • Redirect 301: Esta es la directiva que le dice a Apache que haga una redirección permanente.
  • /ruta-antigua/: Es la parte de la URL de tu sitio que quieres redirigir. No debes incluir el dominio completo aquí, solo la ruta desde la raíz. Por ejemplo, si tu web es https://mipagina.com/blog/articulo-viejo, solo escribirás /blog/articulo-viejo.
  • https://www.tudominio.com/ruta-nueva/: Aquí sí debes poner la URL completa a la que quieres que se dirijan los usuarios.

Ejemplo práctico: Imagina que has movido tu blog de /noticias a /blog. El código sería:

Redirect 301 /noticias https://www.tudominio.com/blog

Con esto, cualquier persona que visite tudominio.com/noticias o tudominio.com/noticias/cualquier-articulo será redirigida automáticamente a tudominio.com/blog (o a tudominio.com/blog/cualquier-articulo si el enlace tiene más partes). ¡Es muy potente!

Redirecciones avanzadas con mod_rewrite: El poder del "cerebro"

La directiva Redirect es perfecta para casos simples. Pero, ¿y si necesitas redirigir URLs con condiciones más complejas? Para eso, Apache nos ofrece el módulo mod_rewrite. Es como pasar de una bicicleta a un coche de Fórmula 1.

mod_rewrite te permite crear reglas basadas en patrones (expresiones regulares) y condiciones. Es la herramienta que usan la mayoría de los sitios web profesionales para gestionar sus URLs.

### La estructura básica de mod_rewrite

Todo bloque de mod_rewrite debe comenzar con dos líneas que activan el motor:

RewriteEngine On
RewriteBase /
  • RewriteEngine On: Esta línea enciende el motor de reescritura.
  • RewriteBase /: Esta línea indica que las rutas son relativas a la raíz del sitio web.

Después, puedes añadir tus reglas. La sintaxis de una regla es:

RewriteRule patrón URL-destino [flags]

### Ejemplo: Redirigir de HTTP a HTTPS

Este es uno de los usos más comunes y vitales hoy en día. Quieres que todos los visitantes sean enviados a la versión segura de tu sitio.

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.tudominio.com/$1 [L,R=301]

Vamos a entenderlo:

  • RewriteCond %{HTTPS} off: Esta es una "condición". Solo se aplicará la siguiente regla si esta condición se cumple. En este caso, solo si la conexión no es segura (HTTPS está "apagado").
  • RewriteRule ^(.*)$ https://www.tudominio.com/$1 [L,R=301]: Esta es la regla. Toma cualquier cosa después del dominio (^(.*)$), la captura en un grupo (representado por $1), y la añade a la nueva URL segura. Los flags [L,R=301] significan que es la última regla (L) y que es una redirección 301 (R=301).

### Ejemplo: Redirigir todas las URLs con "www" a la versión sin "www" (o viceversa)

Esto es crucial para evitar contenido duplicado y consolidar tu SEO. Elige una versión canónica y redirige la otra.

Redirigir de www.tudominio.com a tudominio.com:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.tudominio\.com [NC]
RewriteRule ^(.*)$ https://tudominio.com/$1 [L,R=301]

Redirigir de tudominio.com a www.tudominio.com:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^tudominio\.com [NC]
RewriteRule ^(.*)$ https://www.tudominio.com/$1 [L,R=301]

### Ejemplo: Redirigir una página antigua a otra nueva

Si tienes una página que se ha movido, pero quieres una regla más específica que la que ofrece Redirect 301, puedes usar mod_rewrite:

RewriteEngine On
RewriteRule ^pagina-vieja\.html$ /nueva-pagina/ [L,R=301]

Aquí, . se usa para escapar el punto literal de .html, y $ indica el final de la URL.

Errores comunes y cómo solucionarlos (FAQ)

Lidiar con el .htaccess puede ser frustrante si algo sale mal. Aquí tienes las preguntas más frecuentes que nos llegan al soporte técnico.

### "He puesto una regla y mi web da un error 500 (Internal Server Error)"

Este es el error más común. Significa que hay un error de sintaxis en tu archivo. No entres en pánico.

  1. Primero, respira.
  2. Usa tu copia de seguridad: Sube la versión anterior que guardaste y tu web volverá a la vida.
  3. Revisa el código: Si quieres intentarlo de nuevo, revisa que no te falte un espacio, una barra o una llave. Asegúrate de que la sintaxis es exacta. Un simple espacio de más puede romperlo todo.

[WARNING] Nunca guardes un archivo .htaccess con un editor de texto que no sea de texto plano (como Word o WordPad). Pueden añadir caracteres invisibles que rompan la sintaxis. Usa el editor del panel de control o un editor de código como Notepad++ o Sublime Text.

### "Mis redirecciones no funcionan, pero no dan error"

Esto suele pasar porque el módulo mod_rewrite no está activado en tu servidor, o porque hay otra regla que interfiere. También puede ser que tu servidor tenga la configuración AllowOverride desactivada, lo que impide que el archivo .htaccess funcione.

¿Cómo comprobarlo? La forma más fácil es crear un archivo .htaccess con una línea de prueba, como ErrorDocument 404 /error404.html y ver si se muestra tu página de error personalizada. Si no funciona, contacta con tu proveedor de hosting.

### "¿Debo usar Redirect 301 o mod_rewrite?"

Para redirecciones simples de una página a otra, Redirect 301 es más que suficiente y más fácil de entender. Para reglas complejas, con condiciones o patrones, necesitas mod_rewrite. Como regla general, si tu regla es una simple "de aquí a allá", usa Redirect. Si es "todos los que vengan de esta sección, excepto estos, van a este otro lugar", usa mod_rewrite.

### "¿Puedo hacer una redirección 301 desde un subdominio antiguo?"

Sí, por supuesto. Puedes usar la directiva Redirect de la siguiente manera:

Redirect 301 / https://nuevo-subdominio.tudominio.com/

Coloca este código en el archivo .htaccess del directorio raíz del subdominio antiguo.

Consejos de oro para dominar tus htaccess redirecciones

Para terminar, aquí tienes una lista de buenas prácticas que te ahorrarán muchos dolores de cabeza.

  • Siempre usa la redirección 301 para cambios permanentes: Es la mejor para el SEO. Usa la 302 solo para cambios temporales.
  • Sé específico en tus reglas: Cuanto más específica sea tu regla, menos probable es que cause efectos no deseados en otras páginas.
  • Prueba después de cada cambio: Después de guardar tu .htaccess, visita una URL que debería ser redirigida para comprobar que funciona.
  • Mantén tu archivo limpio y comentado: Usa el carácter # para añadir comentarios y explicar qué hace cada bloque de código. Te lo agradecerás en el futuro.
# Redirigir la página de contacto antigua
Redirect 301 /contacto.html /contacto/
  • Si usas Syspanel: Recuerda que puedes gestionar tus archivos desde su administrador, accediendo por el puerto 2106. Es una forma muy cómoda de editar tu .htaccess sin salir de tu panel.

Configurar el archivo .htaccess es una habilidad que te diferenciará como gestor de tu propio sitio web. No es magia, es lógica. Con estas bases, ya puedes empezar a experimentar y a hacer que tu servidor trabaje para ti. Si te surge cualquier duda, no dudes en consultar la documentación de Apache o contactar con el soporte de tu hosting. ¡Buena suerte con tus redirecciones!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel