Errores y Soluciones de Google

XAMPP error 404 no encontrado: .htaccess o DocumentRoot

Post actualizado el día octubre 29, 2026 by DeiviSanzPlay

Cuando aparece el mensaje XAMPP error 404 no encontrado en Apache, la causa casi siempre está en uno de dos sitios: el archivo .htaccess que reescribe rutas, o la directiva DocumentRoot que decide qué carpeta se sirve. Comparar estas dos opciones no es un capricho teórico: en la práctica, una de las dos explica la mayoría de los casos, y saber cuál toca ahorra horas.

He visto este fallo en proyectos de Laravel que funcionaban en local con el servidor embebido de PHP y morían al pasar a XAMPP. El motivo no era el código: era un .htaccess con reglas de reescritura que Apache interpretaba distinto, o una carpeta public que quedaba fuera del DocumentRoot. Ese detalle cambia por completo el diagnóstico.

Qué hace realmente cada opción

El DocumentRoot es la raíz física desde la que Apache lee los archivos. Si apunta a htdocs y tu proyecto vive en htdocs/miapp/public, la URL localhost/miapp no resolverá el index correcto y verás el 404. El .htaccess, en cambio, actúa sobre la URL ya resuelta: reescribe, redirige o bloquea. Un RewriteRule mal escrito puede convertir una ruta válida en un 404 silencioso, sin tocar el sistema de archivos.

La diferencia importa porque el error de XAMPP no encontrado se manifiesta igual en ambos escenarios: la página de Apache con el aviso. Sin revisar el log de errores, es imposible distinguir si el fallo es de ruta física o de reescritura.

Por qué gana revisar el DocumentRoot primero

Mi recomendación es clara: empieza por el DocumentRoot. La razón es práctica. Comprobar la ruta en httpd.conf o en el archivo de vhosts lleva un minuto y descarta la causa más frecuente. Si la carpeta servida no contiene el index.php o el index.html, ningún ajuste en el .htaccess arreglará el 404.

Un caso típico: proyectos que usan un subdirectorio como raíz pública. Apache no adivina esa estructura. Sin un VirtualHost que apunte a public, la petición busca un archivo que no existe en la raíz y devuelve el error de XAMPP no encontrado. Cambiar la directiva resuelve el problema de golpe.

Cuándo el .htaccess es el verdadero culpable

Hay escenarios donde el DocumentRoot está perfecto y el 404 persiste. Ahí entra el .htaccess. Si el archivo tiene RewriteEngine On pero le falta RewriteBase, o si las condiciones no contemplan subcarpetas, las rutas amigables se rompen. También ocurre cuando se copia un .htaccess de producción con reglas de HTTPS o dominios que en local nunca coinciden.

Esto no funciona para todos los casos: si tu proyecto no usa reescritura de URLs ni frameworks con rutas limpias, tocar el .htaccess es perder el tiempo. Y si el AllowOverride está en None, Apache ignora el archivo por completo, así que editar reglas no tendrá efecto visible.

Cómo decidir sin dar palos de ciego

El log de errores de Apache es la fuente más fiable. Ahí se ve si la petición buscó un archivo inexistente (problema de raíz) o si la reescritura derivó en una ruta inválida. La documentación oficial de Apache sobre DocumentRoot y sobre mod_rewrite explica el comportamiento de cada pieza sin ambigüedades.

En mi experiencia, el orden correcto es: verificar la carpeta servida, comprobar que existe el archivo index, y solo después revisar reglas de reescritura. Invertir el orden genera frustración porque se depura código cuando el fallo estaba en la configuración del servidor.

Veredicto

Entre las dos opciones, el DocumentRoot gana como primer punto de revisión del XAMPP error 404 no encontrado. No porque el .htaccess sea irrelevante, sino porque la causa física es más común y más rápida de confirmar. El .htaccess queda como segunda vía, decisiva en frameworks y en proyectos con URLs limpias. Ninguna de las dos garantiza solución inmediata en todos los entornos; el log de Apache sigue siendo el árbitro final.


Sobre el autor: DeiviSanzPlay — Soy David Sanz, Editor y Responsable de Contenidos. Mi trabajo consiste en revisar, corregir y mejorar los contenidos de este blog para que la información sea clara, útil y esté bien estructurada. Trabajo con diferentes temáticas y verticales, por lo que una parte importante de mi día a día es analizar cada contenido, cuidar la redacción y asegurar que el lector encuentre información de calidad. Me gusta prestar atención a los detalles. Desde una corrección de estilo hasta la organización de un artículo, todo cuenta cuando se trata de crear contenidos que realmente aporten valor y sean fáciles de entender. En este blog encontrarás artículos sobre diferentes temas y sectores. Mi responsabilidad es cuidar y supervisar cada contenido para que mantenga unos estándares de calidad y ofrezca una buena experiencia a quien nos visita. Porque para mí, un buen contenido no consiste únicamente en escribir. También hay que revisar, contrastar, ordenar y pensar en la persona que está al otro lado de la pantalla.

Perfiles verificables: Sitio web

Publicado el 29 de October de 2026. Última revisión: 29 de October de 2026.