作者:木卫二 | 来源:互联网 | 2023-08-12 20:09
今天早上apache突然无法启动,重启电脑仍然没有结果,经过一番努力终于解决了,过程如下:首先查看apache错误日志:1.删除apachelogserror.lo
今天早上apache突然无法启动,重启电脑仍然没有结果,经过一番努力终于解决了,过程如下:
首先查看apache错误日志:
1.删除apache>>logs>>error.log,重启apache查看这个文件发现内容如下:
(OS 10013)以一种访问权限不允许的方式做了一个访问套接字的尝试。 : make_sock: could not bind to address [::]:80
(OS 10013)以一种访问权限不允许的方式做了一个访问套接字的尝试。 : make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
2.win+R 运行cmd 输入:netstat -ano 注意netstat和-中间要有个空格,在结果集“本地地址”中找到[: :]:80也就是apache默认的端口,找到它对应的PID
我这里发现PID:4
3.Alt+Ctrl+Delete启动任务管理器 >>查看>>选择列>>勾选 PID (进程标识符)
4.找到PID为4的进程,我这里显示是 映像名称:system 描述:NT Kernel & System
一看是系统进程吓一跳,怎么办?
这样解决的:
该进程是Http.sys。它是http API的驱动组件,Http栈服务器。如果该端口被Http.sys占用,说明一些正在使用http.sys的应用程序在运行。这就是阻止Apache运行的原因,因为Http.sys占用着80端口。
5.运行:net stop http 按Y 确定
6.运行:Sc config http start= disabled
7.重启Apache ,哇塞!启动了!
Nt Kernel & System 占用80端口,,
Nt Kernel & System 占用80端口