最近本人由于在电脑上同时安装了
sql servers 2008 ,vs2010,
同时搭配了php 的环境,但是,悲剧的事情发生了。
Apache 经常打不开,原因当然是80端口被占用了,于是不停地百度谷歌,重装系统。
最近终于把问题给解决了。
首先介绍一种网上普遍的方法,就是查找占据80端口的进程,然后关闭它就行了。
1、运行cmd,然后输入netstat -ano,回车;
2、查看开头几行包含0.0.0.0:80的那一行最后的pid,为几个数字,把这几个数字记下来;
3、启动“任务管理器”——“进程”,在“工具栏”——“选择列”前面的框里打上勾;
4、然后找到与刚才那个pid对应的是哪个程序,很容易就会找到,就是它与0.0.0.0:80进行了绑定(bind);
结束这个进程,再点击Apache的Start按钮,终于出现了那个Running 。
但是上面的方法不适用我的情况。。因为我找不到pid=4的进程,于是另一方法。
Win7的80端口默认是被System进程占用的。
用如下方法可以解决System进程占用80端口的问题:
打开RegEdit:开始-运行-输入regedit-调出注册表
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP
找到一个DWORD值Start,将其改为0
重启电脑,
System进程将不会占用80端口 就可以打开你的apache了
这种方法确实暂时解决了我的问题,应该就是这样的,但是后面又来问题了。
Apache又无缘无故的打不开了。于是,最后终于发现了进程有个
SQL Server Reporting Services ,这个是sql servers带有的,而且自动运行,关闭它,就可以了。但是切记,可能这个进程会自动打开,
所以先把apache打开,这个的话后面SQL Server Reporting Services运行也不会占用80