Apache:PID 4正在使用端口80

我已经检查了堆栈溢出的所有答案,但没有工作!

我正在尝试通过IIS安装Apache(我禁用了端口80和443上的所有IIS站点)。 我禁用了防火墙。

但是,当我安装Apache时,出现以下错误:

(OS 10048) Only one usage of each socket address (protocol/network address/port) is normally permitted. : make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down Unable to open logs 

编辑:输出netstat -an |查找“TCP”|查找/ V / C“asdadasd”:

 C:\Users\Administrator>netstat -an|find "TCP"|find /v /c "asdadasd" 172 

编辑2:sc查询的输出W3SVC:

 C:\Users\Administrator>sc query W3SVC SERVICE_NAME: W3SVC TYPE : 20 WIN32_SHARE_PROCESS STATE : 1 STOPPED WIN32_EXIT_CODE : 1068 (0x42c) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0 

检查0.0.0.0:80上已经没有任何监听了:

 netstat -anb > netstat.txt notepad netstat.txt 

检查是否在apacheconfiguration中只为0.0.0.0定义一个侦听器一次。 searchListen指令。 Listen 0.0.0.0:80Listen 80

请参阅: http : //httpd.apache.org/docs/2.2/mod/mpm_common.html#listen

您需要找出哪些程序/服务正在使用本地服务器上的端口80。 一种方法是使用tcpview实用程序,它将为您提供所有打开的端口以及与该端口相关的程序的列表。 在TCPView窗口中,按“本地端口”进行sorting,查找端口80,在左侧窗格中,您将看到该进程。 这样,你可以停止或禁用服务器,该工具甚至允许你杀死进程。