He estado tratando de descubrir cómo solucionar este problema durante dos días. Soy nuevo en este tipo de cosas, así que agradecería que alguien me dijera cómo solucionarlo.
Intenté eliminar skype pero eso no funcionó, intenté desactivar la conexión a Internet, IIS desactivado, nada parece funcionar.
12:51:22 PM [Apache] Problem detected!
12:51:22 PM [Apache] Port 80 in use by "Unable to open process" with PID 4!
12:51:22 PM [Apache] Apache WILL NOT start without the configured ports free!
12:51:22 PM [Apache] You need to uninstall/disable/reconfigure the blocking application
12:51:22 PM [Apache] or reconfigure Apache and the Control Panel to listen on a different port
Respuestas:
Abra una solicitud de CMD como administrador y ejecute el siguiente comando:
Abra el cuadro de diálogo Ejecutar (presione Win+ R), luego escriba:
services.msc
Luego busque el Servicio de publicación World Wide Web ( Servicio de publicación WWW) y el Servicio de agente de implementación web y deténgalos. También deberías deshabilitarlos.
Inicie Apache nuevamente con XAMPP :)
Enlace Ref: https://www.sitepoint.com/unblock-port-80-on-windows-run-apache/
fuente
Control Panel > System and Security > Administrative tools > Services
Otra opción muy fácil es simplemente configurar Apache para que escuche en un puerto diferente. Esto se puede hacer haciendo clic en el botón "Config" en la misma línea que el módulo "Apache", seleccione el archivo "httpd.conf" en el menú desplegable, luego cambie la línea "Listen 80" a "Listen 8080". Guarde el archivo y ciérrelo.
Ahora evita el Puerto 80 y usa el Puerto 8080 en su lugar sin problemas. Lo único que debe hacer es asegurarse de colocarlo
localhost:8080
en el navegador para que el navegador sepa que debe buscar en el puerto 8080. De lo contrario, se establece de manera predeterminada en el puerto 80 y no encontrará su sitio local.Esto también requerirá que reinicie Apache para que el cambio surta efecto.
Voila! Fijo.
fuente
C:/xampp
y luego lo cambié al puerto 81. 8080 no funcionó para mí.World Wide Web Publishing Service
, no puedo trabajar en mi aplicación ASP. Entonces, cambiar el puerto es la solución para mí. ¡Gracias!En httpd.conf cambie las siguientes líneas y luego reinicie la aplicación:
Listen 80
aListen 8080
ServerName localhost:80
aServerName localhost:8080
Cuando presiona "Inicio", la aplicación aún puede decir que tiene un error como "Puerto 80 en uso por" No se puede abrir el proceso "con PID ..." pero seguirá funcionando.
Si el error incluye "Puerto 443 en uso por" No se puede abrir el proceso "con PID ...", debe cambiar tanto httpd.conf como httpd-ssl.conf.
En el cambio httpd-ssl.conf:
Listen 443
aListen 4433
<VirtualHost _default_:443>
a<VirtualHost _default_:4433>
ServerName www.example.com:443
aServerName www.example.com:4433
fuente
Extraído de este artículo :
Vaya a su comando de ejecución e ingrese:
netstat -o -n -a | findstr 0.0:80
El último número aquí es la identificación del proceso que lo usa. Esto es más a menudo IIS u otro servicio relacionado con la web y es fácil de resolver, pero de vez en cuando (muy a menudo parece estar buscando en Google) parece ser PID 4, que según el Administrador de tareas de Windows es el kernel NT y Sistema. No es muy útil dado que matar esto dará como resultado una pantalla azul de la muerte.
Lo que acapara el puerto 80 no tiene nada que ver con IIS o la web, es SQL Server Reporting Services. Apague todo lo que se parezca a los servicios de SQL Server e inicie Apache nuevamente, sin necesidad de reiniciar.
Entonces, ¿problemas con PID 4 escuchando el puerto 80? Verifique sus servicios SQL y desactívelos.
ACTUALIZACIÓN - Comentario de @sangam:
fuente
Así que me he enfrentado al mismo problema al intentar iniciar el servicio Apache y me gustaría compartir mis soluciones con usted. Aquí hay algunas notas sobre servicios o programas que pueden usar el puerto 80:
Skype : Skype usa el puerto 80/443 de forma predeterminada. Puede cambiar esto
Tools -> Options -> Advanced -> Connections
y deshabilitar la casilla de verificación "usar el puerto 80 y 443 para conexiones entrantes adicionales" .IIS : IIS utiliza el puerto 80 predeterminado, por lo que debe apagarlo. Puede usar los siguientes dos comandos:
net stop w3svc
,net stop iisadmin
.Servicio de informes de SQL Server : debe detener este servicio porque puede tomar el puerto 80 si IIS no se está ejecutando. Ir a los servicios locales y detenerlo.
VMware Workstation : si está ejecutando VMware Workstation, debe detener el servidor VMware Workstation, el puerto 443 también.
Estas opciones funcionan muy bien conmigo y puedo iniciar el servicio Apache sin errores.
La otra opción es cambiar el puerto de escucha de Apache desde httpd.conf y establecer otro número de puerto.
Espero que esta solución ayude a cualquiera que enfrente el mismo problema nuevamente.
fuente
Es posible que deba detener el "Servicio del Agente de implementación web"
Presione Win + R y escriba services.msc
Haga clic derecho en Servicio de agente de implementación web y seleccione "Detener"
Reiniciar XAMPP
Además, después de hacer doble clic en "Servicio de agente de implementación web", puede hacer que el Tipo de inicio sea Manual, de modo que el "Servicio de agente de implementación web" no se inicie automáticamente
fuente
fuente
Como hay comentarios de @johnkarka sobre la pregunta, este puerto también lo utiliza el servicio de informes de SQL Server. Después de detener esto, Apache comenzó bien.
Lo curioso es que IIS funcionaba bien en la misma configuración, pero no en Apache, tuvo que detener el servicio de Informes SQL para que funcionara en el puerto predeterminado (80).
fuente
Lo que funcionó para mí fue detener los Servicios de Información de Internet (IIS). Si está utilizando Windows 7, haga clic en el botón Inicio y en su cuadro de búsqueda, escriba "iis". Haga clic en "Administrador de Internet Information Services (IIS)". Cuando aparece la ventana, y asumiendo que no tiene ninguno de los íconos seleccionados, debería poder hacer clic en Detener en el panel de acción derecho. Mi XAMPP Apache comenzó de inmediato. Espero que todo te haya funcionado.
fuente
En Windows 10, para liberar el puerto 80:
en mi caso, abro "Servicios" desde "Buscar Windows" (en la esquina izquierda de la pantalla), luego detengo todos los servicios del servidor SQL MSSQLSERVER y funciona de nuevo
fuente
También tuve este problema y detener los servicios usando el puerto 80 no ayudó. Lo resolví siguiendo este procedimiento (que se encuentra en un tablero francés ):
No estoy seguro de cómo esto afecta a otros servicios, pero resolvió permanentemente el problema y hasta ahora no vi ningún problema.
Usando Windows 10.
fuente
Si tiene SQLServer Reporting Services ejecutándose localmente, entonces también debe detenerlo ...
fuente
Tuve el mismo problema, pero en mi caso Apache ya se estaba ejecutando y, por alguna razón, la herramienta de configuración XAMPP no lo mostró. Sucedió después de que comencé XAMPP por primera vez después de la instalación. Después de bloquear las otras instancias de Apache, todo estaba bien y los puertos 80 y 443 estaban libres nuevamente.
Entonces, antes de hacer cambios en su sistema, asegúrese de que algo tan obvio como lo anterior no esté sucediendo.
fuente
"SQL Server Reporting Service" estaba causando problemas en mi sistema, después de detenerlo, Apache comenzó a funcionar bien
fuente
Tengo el mismo problema, resolví el problema, solo deshabilité
"Servicio BranchCache" en servicios.
De alguna manera, las actualizaciones de Windows, este servicio se activa en el inicio y utiliza 80 puertos. Cuando verifica a través de netstat, puede ver que el sistema se usa, pero no puede entender qué servicio se usa.
fuente
Después de cambiar el puerto principal 80 a 8080, debe actualizar el puerto en el panel de control: luego haga clic aquí: y aquí: guarde y reinicie.
fuente
Haga clic en servicios en el panel de control de Xampp (el nombre de archivo es services.msc, información adicional).
Primero, busque IIS, si se está ejecutando. Deténgalo (detenga esta opción de servicio a la izquierda después de hacer clic en el nombre del servicio). Entonces, este es el problema principal, busque el servicio de implementación web (no es el nombre exacto, aunque tiene una implementación web al principio). Detén este servicio también. Inténtalo de nuevo y Apache debería funcionar.
Si está ejecutando Skype, salga de eso también, ejecute Apache, luego inicie Skype
fuente
Tuve el mismo problema, cuando instalé MS WebMatrix, IIS Server bloqueó el puerto 80 en el que XAMPP se estaba ejecutando. Traté de encontrar el Servicio de publicación World Wide Web y detenerlo, pero no pude encontrarlo en la lista. La mejor manera es cambiar un puerto.
Consulte con este
enlace ref.
fuente
Para aquellos con ASP.NET, C # o que tienen usuarios de SQL Server, si está utilizando SQlServer O Visual Studio Su puerto puede encontrarse. Lo más fácil que puede querer hacer es en Command> servies.msc y luego busque SQl Server Reporting Service y luego deténgalo.
fuente
si el servicio es http.sys
Debe cambiar la dirección IP enlazada para http.sys
Funciona bien sin reiniciar el sistema operativo.
fuente
El servicio del Agente de implementación web se implementó con WebMatrix y fue la causa de mis problemas. También se puede distribuir con otras aplicaciones instaladas usando el Instalador de plataforma web de Microsoft.
Desinstalar resolvió mis problemas!
fuente
Para mí, por lo general, funciona: - Apague Skype - Apague todos los procesos de SQL Server que se muestran en services.msc - Apague World Wide Web Publishing en services.msc
fuente
Por lo general, funciona después de detener el servidor IIS y Skype
fuente
XAMPP - ¡Puerto 80 en uso por "No se puede abrir el proceso" con PID 4! 12
ejecuta el comentario en cmd tasklist
y encuentre qué PID y nombre de proceso relacionado con esto ahora abren el administrador de tareas de la ventana
También puede abrir el administrador de tareas de la ventana utilizando CTRL + ALT + SUPR
ahora haga clic en la pestaña de proceso y encuentre el nombre que usa PID y haga clic derecho en eso y finalice el proceso
ahora nuevamente reinicie el xampp
fuente
Tuve el mismo problema Después de un poco de google llegó a esta página. Como supongo que este error puede tener varias razones, escuche mi experiencia:
Registro de línea roja de Xampp:
Finalmente resultó que tenía esta línea de código en mis códigos php:
El propósito de este fragmento de código era obtener un espejo del resultado de PHP desde algún lugar de mi servidor. ¡Pero está atrapado en un bucle que tiene su propio contenido!
Reparé el código:
Luego reinicié Apache ... y ese error de Apache nunca volvió a ocurrir.
Entonces, a veces, buscar un punto de detención probable en su código es un buen enfoque.
fuente
En Ubuntu de manera predeterminada, el sistema no le permitirá ocupar puertos privilegiados [0 a 1023], aparte de especificar el puerto como 80, debe ejecutar XAMP con sudo.
fuente
Escribo esto, porque no pude encontrar answear para la misma pregunta. En mi caso, el PID fue de 2484.
debe encontrar un proceso o servicio con este PID: abra cmd (en Windows) y escriba:
Encuentre su PID en esta lista y lea el nombre del proceso o servicio.
Ahora puedes matar esto usando el Administrador de tareas
encuentre este nombre en la lista de procesos
haga clic en Finalizar proceso.
Ese es mi caso. Posiblemente deba abrir services.msc y detener el Servicio con su PID.
En mi computadora xampp funcionó bien :)
fuente