Win7的80端口默认是被System进程占用的
用如下方法可以解决System进程占用80端口的问题:
打开RegEdit:
找到HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/HTTP
找到一个DWORD值Start,将其改为0
重启电脑,System进程将不会占用80端口
============================================
新装了win7后,在启动Apache的时候,总是启动失败,查看80端口,被pid=4的进程占用,打开任务管理器,发现pid=4的进程居然是个系统进程!
尝试终结此进程,结果是蓝屏。
解决过程:
在网上查了许久,发现以下解决方案:
原文:
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