Tema 7 · Conflictos de Red

Diagnóstico y Solución de Conflictos en Puertos 80 y 443

Soluciona el error clásico "Port 80 in use by Unable to open process with PID 4": diagnóstico con Netstat, liberación de puertos de IIS y cambio a puerto 8080.

El Gran Problema: "Port 80 in use by PID 4"

El error más frustrante para un principiante ocurre al hacer clic en Start en Apache y ver que el fondo verde dura medio segundo, se apaga y la consola se llena de letras rojas:

[Apache] Error: Apache shutdown unexpectedly.
[Apache] This may be due to a blocked port, missing dependencies, improper privileges, a crash, or a shutdown by another method.
[Apache] Port 80 in use by "Unable to open process" with PID 4!

¿Qué Significa PID 4?

En Windows, el PID 4 pertenece al propio kernel del sistema operativo (System). Casi siempre representa a los servicios integrados de IIS (Internet Information Services) de Microsoft:

  • World Wide Web Publishing Service (W3SVC): Viene activado por defecto en muchas versiones de Windows Pro o Enterprise.
  • Servicio de Administración Remota de Windows (WinRM).
  • Programas que usan el puerto 80 o 443: Antiguas versiones de Skype o adaptadores de red de VMware Workstation.

Guía Visual de Diagnóstico y Solución

Diagrama Técnico: Resolución de Conflictos de Puertos en XAMPP

Diagrama 7.1: Las dos alternativas para resolver la colisión del puerto 80: liberar el puerto desactivando IIS o configurar el puerto 8080 en Apache.

Solución A: Liberar el Puerto 80 (La Más Recomendada)

Si no usas IIS de Microsoft, lo mejor es apagarlo para que Apache pueda usar el puerto estándar 80:

  1. Presiona Win + R, escribe services.msc y pulsa Enter.
  2. En la lista de servicios, busca "Servicio de publicación World Wide Web" (o World Wide Web Publishing Service).
  3. Haz clic derecho sobre él ➔ selecciona Propiedades.
  4. Haz clic en el botón Detener.
  5. En la opción Tipo de inicio, selecciona Deshabilitado para que no vuelva a arrancar al reiniciar la PC.
  6. Haz clic en Aplicar y Aceptar.
  7. Abre el panel de XAMPP y pulsa Start en Apache: ¡iniciará en verde al instante!

Solución B: Cambiar Apache al Puerto 8080

Si por razones laborales necesitas conservar IIS en el puerto 80, cambia el puerto de Apache:

  • En el panel de XAMPP, haz clic en el botón Config al lado de Apache y abre httpd.conf.
  • Busca la línea Listen 80 y cámbiala por Listen 8080.
  • Busca la línea ServerName localhost:80 y cámbiala por ServerName localhost:8080.
  • Guarda el archivo (Ctrl + G) y vuelve a pulsar Start. Ahora Apache escuchará en http://localhost:8080/.

⚡ Identificar el Proceso que Ocupa el Puerto 80 con PowerShell

Averigua con exactitud qué proceso tiene bloqueado el puerto 80 de tu sistema:

detectar-puerto-80.ps1
Solo lectura
# Buscar qué proceso está escuchando en el puerto 80:
Get-NetTCPConnection -LocalPort 80 -ErrorAction SilentlyContinue | 
  Select-Object LocalAddress, LocalPort, OwningProcess, State

# Ver qué aplicación corresponde a ese número de proceso (PID):
Get-Process -Id 4 | Select-Object Id, ProcessName, Description
🧠
Mini-Quiz de Retención
Comprueba tu comprensión antes de pasar a la siguiente lección
1 Pregunta
Pregunta 1
Si cambias el puerto de Apache a 8080 en httpd.conf, ¿cómo debes escribir la dirección en tu navegador para ver tus proyectos?
🦉
¿Tienes dudas con este tema?
Sócrates AI puede darte analogías y explicarte este código paso a paso.

🚀 ¿Quieres dominar Manual de XAMPP: Instalación & Pruebas y crear proyectos reales?

Aprende arquitectura limpia, desarrollo web moderno, buenas prácticas y despliegue en producción con nuestro Bootcamp Fullstack Developer con mentorías en vivo.

🏛️ Autoría y Propiedad Intelectual: Obra educativa original de David Amador para Kilopolis Academia (Solucionáticos), estructurada sobre las especificaciones y estándares abiertos del W3C, el estándar vivo de WHATWG y la documentación oficial de código abierto. © Todos los derechos reservados.