Post actualizado el día octubre 29, 2026 by DeiviSanzPlay
Configurar XAMPP servidor local suele fallar en el mismo punto: Apache no arranca porque el puerto 80 está ocupado. No es un fallo de XAMPP, es Skype, IIS o algún servicio de Windows que ya escucha ahí. Antes de reinstalar nada, abre el panel de control de XAMPP y mira el log de Apache: si dice Address already in use, ya tienes el diagnóstico.
La solución rápida pasa por cambiar el puerto en httpd.conf. Busca la línea Listen 80 y cámbiala por Listen 8080. Haz lo mismo en ServerName localhost:80. Después tendrás que entrar a http://localhost:8080 en lugar de la URL habitual. Es incómodo al principio, pero funciona.
Qué revisar antes de tocar la configuración de XAMPP
Si Apache arranca pero MySQL se queda en amarillo, el problema es otro. XAMPP usa el puerto 3306 para MySQL y, si tienes MariaDB o MySQL instalado aparte, chocan. En ese caso, edita my.ini y cambia port=3306 por port=3307. Luego actualiza la configuración de tu proyecto: en WordPress, por ejemplo, tendrás que poner DB_HOST como localhost:3307.
Una cosa que casi nadie menciona: configurar XAMPP servidor local en Windows con Bitnami instalado encima suele duplicar servicios. Bitnami añade sus propios binarios y, si no desinstalas limpio, los puertos quedan pillados por procesos fantasma. Revisa el Administrador de tareas y mata procesos httpd.exe o mysqld.exe huérfanos antes de relanzar el panel.
El detalle del DocumentRoot que rompe más proyectos de los que parece
Por defecto, XAMPP sirve archivos desde C:xampphtdocs. Mucha gente pone su proyecto ahí y luego no entiende por qué las rutas absolutas fallan en producción. Mi consejo: cambia el DocumentRoot en httpd.conf a una carpeta propia, tipo C:proyectosmiweb. Así separas el software del servidor de tu código. Es un cambio de dos líneas que ahorra disgustos.
Ojo con los permisos en Windows si trabajas con carpetas sincronizadas en OneDrive o Dropbox. Apache no lee bien esas rutas virtuales y devuelve errores 403 sin motivo aparente. Lo he visto más de una vez: el proyecto está bien, pero la carpeta está «en la nube» y el servidor local no la digiere.
VirtualHosts: cuando localhost ya no basta
Si tienes varios proyectos, configurar XAMPP servidor local con virtual hosts es lo que separa un entorno cómodo de uno caótico. En httpd-vhosts.conf defines un bloque por proyecto:
<VirtualHost *:80>
DocumentRoot «C:/proyectos/miweb»
ServerName miweb.local
</VirtualHost>
Luego editas C:WindowsSystem32driversetchosts y añades 127.0.0.1 miweb.local. Esto no funciona igual en macOS moderno con permisos SIP activos, y tampoco en algunos entornos corporativos donde el archivo hosts está bloqueado por política. Ahí tendrás que tirar de localhost/miweb y asumirlo.
Limitaciones reales de XAMPP que conviene saber
XAMPP no está pensado para producción. La documentación oficial de Apache Friends lo dice de forma explícita: es un entorno de desarrollo. No expongas tu instalación a internet sin cambiar contraseñas, porque MySQL por defecto tiene el usuario root sin password. He visto más de una máquina de desarrollo comprometida por este detalle.
Tampoco esperes que XAMPP reproduzca tu servidor real. Si tu hosting usa PHP 8.3 con OPcache y Nginx, XAMPP con Apache y PHP 8.2 te dará diferencias de rendimiento y comportamiento. Para validar código va bien; para probar rendimiento, no.
Un caso concreto: una instalación de PrestaShop que funcionaba en XAMPP daba error de sesión en el servidor porque la configuración de session.save_path era distinta. Configurar XAMPP servidor local no garantiza paridad con producción, y conviene tenerlo presente antes de dar por bueno un desarrollo.
Checklist rápido antes de dar por cerrada la configuración
Comprueba estos puntos después de ajustar puertos y rutas: Apache en verde, MySQL en verde, phpMyAdmin accesible desde el panel, y tu proyecto carga sin warnings de PHP. Si algo falla, el log apachelogserror.log es tu primer sitio donde mirar, antes que foros o tutoriales genéricos.
Y si nada de esto funciona, plantéate alternativas como Laragon o Docker con imágenes preconfiguradas. XAMPP es cómodo, pero no es la única vía para tener un servidor local funcional.
Perfiles verificables: Sitio web
Publicado el 29 de October de 2026. Última revisión: 29 de October de 2026.