今天安装php环境的时候老是提示80端口被占用 网上找了半天也没有解决方案
cmd下面netstat了一下 发现时pid4这个进程
开始以为是iis的服务 停掉以后还是不行 控制面板里面卸载掉卸载internet信息服务-->万维网服务后还是不行
捣鼓了半天 原来是sql08的report服务占用了 system的进程不一定就是iis
进行apache启动时。出现这个错误:
通常每个套接字地址(协议/网络地址/端口)只允许使用有一次: make_sock:could not bind to address 0.0.0.0:80
多方实验解决:
1,在运行里输入 cmd 进入DOS命令行窗口
2,输入命令 netstat -anb
看到80端口 被tomcat5在占用,关闭它,apache就正常启动了!如果你的80端口是被其他程序占用,直接关闭程序就可以了!
在CMD下运行:
apache -k install
apache -k start
这个apache的出错提示!
可能是你还安装了其他的web服务器,比如IIS,它的默认端口也是80,你需要修改它的默认端口或修改apache的。
倘若安装了其他的web服务器,那就在系统的服务里面先停掉然后安装apache。
倘若没有安装其他的服务器,只是apache安装了多次,那么卸载apache的同时,一定要在磁盘中删除apache的所在安装路径下在文件,从新启动电脑,然后从新安装apache,就会ok的。
主要就是 web服务器的端口冲突,还有就是多次安装卸载的不干净。
winxp 下 apache2 安装 问题及解决
安装apache 2 出现的问题:
“(OS 10048)通常每个套接字地址 (协议/网络地址/端口) 只允许使用一次:
make_sock: could not bind to address 0.0.0.0:80...”
一般是IIS或其他程序占用了80端口引起的
分析:
netstat -a
查看相应端口,是否有程序占用
netstat -ab
查看具体占用程序
两种解决方法:
1、打开 控制面板->服务 找到 IIS admin 等相应服务 关闭并禁用
2、如果不想关闭IIS服务 可将apache使用的端口改成其它端口
将apache2/conf/httpd.conf 中的
Listen 80 改为 Listen (你要使用的端口) 如 Listen 8080
不过这时在你访问你的apache 下的Web服务时 在域名后要加上端口号
如: http://localhost:8080
然后用CMD进入命令行模式 进入你安装apache的目录 /apache2/bin
输入
apache -k install
apache -k start
通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
经过研究发现原来:
所有非托管资源程序必须能控制资源释放,如数据库连接、SOCKET连接等在使用后都应当显示关闭,如果是长连接,在程序退出时应当确保所有占用的连接都被关闭。
绑定的端口没有释放,需要等待一段时间,或者在程序退出时调用close关闭udp套接字。
我查看任务管理器的进程,发现上一个页面的开发服务器引起的,我结束进程:
强行关闭8080端口
解决方法如下: 1.打开CMD. cmd
2.查找端口号的PID netstat -a -o
3.强行关闭 ntsd -c q -p PID(查询出来的PID号码)