Soluciones Xampp

XAMPP no arranca en 2026: solución definitiva en 5 pasos

Que XAMPP no arranque justo cuando tienes una entrega o estás probando algo en local es una de esas cosas que te sacan de quicio. Apache se queda en rojo, MySQL no responde y tú mirando la pantalla como un idiota. He pasado por eso más veces de las que me gustaría admitir, y después de mucho trastear tengo claro que el 90% de los fallos se resuelven con cuatro cosas básicas. Aquí va mi receta, sin rodeos.

El puerto 80: el enemigo silencioso que bloquea XAMPP

El puerto 80 es el que Apache usa por defecto para servir HTTP. Si otra aplicación lo está ocupando, XAMPP no arrancará y te lanzará un error tipo “Port 80 in use by…”. No es magia, es un conflicto de puertos. Lo primero que haces es abrir el símbolo del sistema como administrador y ejecutar netstat -ano | findstr :80. Eso te da el PID del proceso que está chupando el puerto.

Con ese PID, vas al Administrador de tareas, pestaña Detalles, y buscas el proceso. Muchas veces es Skype, IIS, o algún servicio de Windows como “Web Deployment Agent”. Lo matas y listo. Pero si no quieres cerrar esa aplicación, puedes cambiar el puerto de Apache en XAMPP: abres httpd.conf, buscas Listen 80 y lo cambias por Listen 8080. Luego en el navegador usas localhost:8080. Es un parche rápido, aunque para proyectos que esperan el puerto 80 quizá prefieras liberarlo de verdad.

Errores de configuración en httpd.conf y my.ini

Si el puerto no es el problema, entonces toca revisar los archivos de configuración. El httpd.conf de Apache y el my.ini de MySQL se corrompen con facilidad si has editado algo a mano o si una actualización de Windows ha metido la pata. Abre el archivo con un editor de texto plano (Notepad++ vale) y busca líneas que empiecen por Listen, ServerRoot o DocumentRoot. Asegúrate de que las rutas existen y no tienen barras invertidas raras.

En MySQL, revisa que datadir apunte a la carpeta correcta y que port sea 3306 (o el que uses). Un fallo tonto: a veces se queda un punto y coma de más o una ruta con espacios sin comillas. Si ves algo sospechoso, coméntalo con # y prueba a arrancar. Y si todo parece bien, siempre puedes restaurar los archivos originales desde la carpeta backup que XAMPP crea al instalar. Es más rápido que pelearte con el código.

Permisos y bloqueos de Windows Defender

Windows 10 y 11 son muy suyos con los permisos. Si instalaste XAMPP en C:xampp (lo recomendable), a veces el propio sistema bloquea la escritura en la carpeta htdocs o en los logs. Ejecuta XAMPP como administrador y revisa que tu usuario tenga control total sobre la carpeta de instalación. Para ello, clic derecho > Propiedades > Seguridad > Editar > y marcas Control total para tu usuario.

Otro culpable habitual: el firewall. Al primer arranque, Windows pregunta si permitir Apache y MySQL en redes privadas. Si le diste a “Cancelar” en su momento, ahora no funcionarán. Ve a Firewall de Windows Defender > Permitir una aplicación > Cambiar configuración > y marca las casillas de httpd.exe y mysqld.exe. Con eso suele bastar.

Reinstalación limpia: cuando ya no queda otra

Si has probado todo y XAMPP sigue sin responder, toca formatear el tema. Pero antes, haz copia de seguridad de tus bases de datos (exporta con phpMyAdmin si puedes acceder, o copia la carpeta mysql/data) y de tus proyectos en htdocs. Luego desinstala XAMPP desde Panel de control > Programas. No borres la carpeta a lo bruto; usa el desinstalador. Después, elimina cualquier resto de la carpeta C:xampp manualmente.

Descarga la última versión desde apachefriends.org (a día de hoy, la 8.2.x con PHP 8.2). Instálala en una ruta sin espacios ni caracteres raros, tipo C:xampp. Al terminar, importa tus bases de datos y vuelve a copiar tus proyectos. Es un incordio, sí, pero es la solución definitiva cuando nada más funciona.

Errores específicos de PHP y extensiones

A veces Apache arranca bien pero tus scripts PHP fallan. Entonces el problema está en php.ini. Revisa que las extensiones que usas (mysqli, curl, gd, etc.) estén descomentadas. Busca las líneas ;extension=mysqli y quita el punto y coma. También comprueba que extension_dir apunta a la carpeta ext de tu instalación. Un error clásico: haber instalado una versión de PHP que no coincide con la de XAMPP (por ejemplo, actualizaste PHP manualmente sin actualizar Apache).

Si ves un error 500, mira el log de Apache en xampp/apache/logs/error.log. Ahí te dice exactamente qué línea está fallando. No ignores los logs, son tu mejor amigo. Y si usas rutas relativas mal escritas, también te dará problemas. Revisa que no tengas espacios antes de <?php en tus archivos, eso provoca errores de cabeceras.

Herramientas de diagnóstico rápido

Para no volverte loco, ten a mano estos comandos:

  • netstat -ano | findstr :80 para ver quién ocupa el puerto 80.
  • tasklist | findstr httpd para comprobar si Apache está corriendo.
  • sc query mysql para ver el estado del servicio MySQL si lo instalaste como servicio.
  • El propio panel de XAMPP tiene un botón “Netstat” que te muestra los puertos en uso. Úsalo.

Con esto puedes diagnosticar en segundos si el fallo es de puertos, de permisos o de configuración. No pierdas tiempo reinstalando a lo loco; primero diagnostica.

Consejos para evitar que vuelva a pasar

No instales XAMPP en C:Program Files porque los permisos de escritura te darán guerra. Mejor en la raíz. Tampoco lo ejecutes siempre como administrador; solo cuando sea necesario. Mantén actualizada la versión de XAMPP, pero no saltes a la última beta sin probar. Y si usas Skype, configura en sus opciones que no use el puerto 80 (Herramientas > Opciones > Avanzado > Conexión).

Otra cosa: cierra XAMPP correctamente. No le des al botón de apagar Windows con Apache corriendo, porque puedes corromper las bases de datos. Usa el botón Stop del panel. Y haz copias de seguridad periódicas de mysql/data; te salvarán el culo más de una vez.

Si después de todo esto XAMPP sigue sin arrancar, es posible que tengas un problema más profundo de sistema: archivos de sistema corruptos, una actualización de Windows que la ha liado, o incluso un antivirus demasiado agresivo. En ese caso, ejecuta sfc /scannow en el símbolo del sistema como administrador y revisa el Visor de eventos. A veces el fallo no es de XAMPP, sino de Windows.

Y ya sabes, si te ha servido, compártelo con ese colega que siempre está peleándose con el localhost. Nos ahorramos todos un dolor de cabeza.

Sobre el autor

Deivi Sanz

Soy David, conocido como Deivi Sanz, especialista en SEO y marketing digital con más de 15 años de experiencia ayudando a negocios a destacar en el mundo online.

Mi pasión es transformar ideas en estrategias digitales efectivas, combinando análisis de datos, creatividad y las últimas tendencias en posicionamiento web. En este blog comparto mis conocimientos sobre SEO técnico, content marketing y growth hacking, siempre con un enfoque práctico y resultados medibles.

Cuando no estoy optimizando webs o escribiendo artículos, me encontrarás explorando nuevas herramientas SEO, analizando casos de éxito o disfrutando de un buen café mientras planifico la siguiente estrategia viral.

También me gusta implementar ideas creando plugin para WordPress o aplicaciones para Android.

Firma:

Con dedicación y estrategia,

David "Deivi Sanz"
🔍 Especialista SEO
🌐 Creador de Contenidos Digitales
🚀 Transformando visitas en oportunidades

¿Necesitas ayuda con tu proyecto digital?
¡Hablemos en los comentarios! o en contactar
Deivi Sanz

Ver más artículos de Deivi Sanz