前段时间停止了Apache,结果在打开的时候发现无法打开,80端口被占用,于是win+r 运行cmd
输入netstat -ano
可以看到80端口被PID4占用,于是打开任务管理器-进程-查看,选择列,勾选PID
可以看到pid 4 的被NT kernel & System 占用
在网上找了很久找到解决方案
http://www.cameroncooke.com/2009/01/25/windows-7-uses-port-80-and-makes-it-impossible-to-install-apache-solution/comment-page-1/#comments
原文:
I work on Http.sys technology at Microsoft and somebody sent me a link to this blog. I am a bit surprised by this behavior you are seeing on Windows7 Beta and with some help from you, I will like to find out the root cause of this issue so that we can take the appropriate action if needed.
You are right, Http.sys uses port 80. It is the driver component for httpapi, the server http stack (You can find more info on this technology at http://msdn.microsoft.com/en-us/library/aa364434(VS.85).aspx ). In your case, some application is running which is using http.sys to listen on port 80. This is preventing Apache from using port 80. We offer a mechanism for applications to help control port sharing but I’ll need to look into the specific application that’s causing you this conflict. If you can give us the output of following command “netsh http show servicestate”, then it will allow me to find out which application is using http.sys. Since you have disabled http.sys, please follow these steps listed below before running the command:
1. sc config http start= demand
2. Reboot
3. Run the command (netsh http show servicestate) as administrator
After you have run this command, you can disable http.sys as follows:
1. net stop http
2. Sc config http start= disabled
Please let me know if you face any issues in the process.
Thanks,
Niranjan
翻译如下:
该进程是Http.sys。它是http API的驱动组件,Http栈服务器。如果该端口被Http.sys占用,说明一些正在使用http.sys的应用程序在运行。这就是阻止Apache运行的原因,因为Http.sys占用着80端口。我们提供了一种应用程序的机制来帮助控制端口共享,但是我需要调查导致你遇到这种困难的是什么特殊应用程序。如果你能提供给我们“netsh http show servicestate”这条命令的输出结果,我就能找出是哪个应用程序在使用Http.sys。在你禁用Http.sys之前,请按照下面的步骤来运行命令:
1. sc config http stat = demand
2. reboot
3. run the command(netsh http show servicestat)as administrator
在你使用这个命令之前,你可以按照下面步骤禁用http.sys:
1. net stop http
2. Sc config http start= disabled
于是运行net stop http
按y 确定
在运行 Sc config http start= disabled
好了,现在启动Apache,可以启动了。
在查看一下netstat -ano
发现pid 4占用了445端口
分享到:
相关推荐
使用PHP集成环境等,出现80端口被NT kernel & System 占用,解决80端口被NT kernel & System 占用pid 4的问题,
资源名称:80端口被NT kernel 资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
system进程(pid=4)占用80端口
win10 80端口被占用 解决system进程占用80端口的问题.zip
个人总结的MySQL会用到的一些常用命令: 80端口被NT kernel & System 占用pid 4解决方法;更改host配置;root忘记登录密码;
本文给大家介绍80端口被system占用导致Apache无法启动的解决方法,非常不错,一起看看吧
如果启动iis或者apatch时报80端口被占用,可以用文档操作方式修改,亲测可用
新装win10,默认的80端口被系统占用,导致nginx和apache不能正常使用,网上找到的修改注册表的方法解决问题,上传注册表修改信息,方便修改注册表.
为了能继续下载,需要收一点积分 80端口被占用的解决方案
修复system 80端口占用(需重启),双击导入注册表然后重启电脑80端口自动解除system占用。
组态王运行时提示80端口被占用之解决方法
Java80端口占用异常解决方法,在 cmd中查找正在占用80端口的服务,再在进程中取消其服务
80端口是否被占用
如何查看80端口是否被占用_端口被占用解决办法
检测80端口是否被占用及如何释放80端口的方法
端口扫描&IP隐藏&IP修改&IP显示&IP扫描&IP伪装&IP截取(工具全集) 应有尽有。
安装软件的时候,发现80端口被系统占用,如何解决的方法
解决80端口被PID 4占用的问题
win7下面80端口被占用,apache无法打开的解决方法。