Informática y Software Práctico

XAMPP no arranca Apache solución: el fallo de novato

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

La solución cuando XAMPP no arranca Apache casi siempre está en un detalle que se pasa por alto en los primeros minutos: Skype, IIS o algún servicio del sistema ya tiene ocupado el puerto 80. No es un bug de XAMPP ni una instalación corrupta. Es una colisión de puertos que el panel de control muestra como un error genérico y que muchos principiantes interpretan como «Apache está roto».

He visto este caso decenas de veces en equipos de conocidos que empiezan con PHP. Abren XAMPP, pulsan Start en Apache, el módulo parpadea en rojo y aparece un mensaje escueto. La reacción habitual: reinstalar. Y al reinstalar, el problema sigue ahí porque el puerto continúa ocupado por otro programa.

Por qué el error de puerto se disfraza de fallo de Apache

El panel de XAMPP no distingue entre «Apache no arranca por configuración inválida» y «Apache no arranca porque no puede enlazar al puerto 80». Ambos casos se muestran igual. Esa ambigüedad es la raíz del error de novato.

Antes de tocar nada, abre el botón Netstat del propio panel de control de XAMPP. Ahí verás qué proceso está escuchando en el puerto 80. Si aparece algo distinto de httpd.exe, ya tienes la respuesta al problema de XAMPP no arranca Apache solución.

En Windows es frecuente encontrar el servicio World Wide Web Publishing Service (IIS) activo sin que el usuario lo sepa. En macOS, el servidor web integrado de Apple. En Linux, Nginx o Apache del sistema instalado por el gestor de paquetes. Cualquiera de ellos bloquea el arranque.

La solución real: liberar el puerto o cambiarlo

Hay dos caminos válidos y conviene elegir con criterio:

Liberar el puerto 80. Detén el servicio que lo ocupa. En Windows: services.msc, localiza IIS o el servicio correspondiente y desactívalo. Es lo más limpio si no usas ese otro servidor.

Cambiar el puerto de Apache. Edita httpd.conf y sustituye Listen 80 por Listen 8080. Haz lo mismo con ServerName localhost:8080. Después accede por http://localhost:8080. Esta opción es la más rápida y no rompe nada del sistema.

Si tu XAMPP no arranca Apache y MySQL a la vez, revisa también el 3306 para MySQL. El patrón es idéntico.

Errores secundarios que confunden el diagnóstico

No todo es puerto. Hay casos donde Apache sí arranca pero el panel lo marca en rojo por un bloqueo de firewall, o porque el archivo de logs no tiene permisos de escritura. En macOS con versiones recientes, la cuarentena de Gatekeeper puede impedir la ejecución de binarios descargados.

Otro clásico: rutas con espacios o caracteres especiales en la carpeta de instalación. XAMPP en C:UsersNombre Apellidoxampp suele dar problemas con VirtualHost y con algunos módulos. Instalar en C:xampp evita sorpresas.

Y ojo: esta solución no funciona si el problema es un módulo mal cargado en httpd.conf. En ese caso Apache sí muestra un error específico en los logs. Cuando el mensaje es genérico y el puerto está libre, revisa los logs antes de reinstalar.

Qué hacer cuando el puerto está libre y sigue sin arrancar

Ejecuta httpd.exe -t desde la carpeta bin de Apache en una consola. Te dirá si la sintaxis de configuración es válida. Si hay un error, lo nombrará con archivo y línea.

Revisa también que no tengas dos instalaciones de XAMPP conviviendo. Pasa más de lo que parece, sobre todo tras actualizaciones. Una instalación antigua puede mantener un servicio registrado que entra en conflicto con la nueva.

El foro oficial de Apache Friends y la documentación de Apache HTTP Server recogen estos casos. No hay una solución universal: la mayoría de las veces es puerto, pero no siempre.

Una rutina de diagnóstico que ahorra tiempo

Antes de tocar configuración, haz esto en orden: mira Netstat en el panel, comprueba los logs de Apache, prueba httpd -t. Tres minutos que evitan una hora de reinstalaciones inútiles.

Cuando alguien me pregunta cómo resolví mi primer XAMPP no arranca Apache solución, la respuesta honesta es que perdí una tarde entera reinstalando antes de descubrir que Skype tenía el puerto 80. Desde entonces lo primero que reviso es Netstat. Es aburrido, pero funciona.


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.