欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Xampp中Apache无法启动的解决方法

程序员文章站 2022-03-11 17:13:48
...
xampp(apache+mysql+php+perl)是一个功能强大的建站集成软件包。许多人通过他们自己的经验认识到安装Apache 服务器是件不容易的事儿。如果您想添加 MySQL、PHP 和Perl,那就更难了。应用xampp可以轻松地在各种系统下搭建php等程序的运行环境。

Xampp的获得和安装都十分简单,你只要到以下网址:
http://www.apachefriends.org/zh_cn/xampp.html 下载xampp即可,我安装的是windows版本的Installer安装包,只要根据它的安装提示一路安装下去就可以了,十分方便快捷。
不过,安装目录最好选择C盘之外的其它磁盘,据某些网友的经验,在Windonws7或Vista中,如果选择C盘安装,由于权限原因,会出现创建一些文件失败的问题。如果你已经据有最高权限,可以直接装在C盘。
一般在windows XP或windows 7中,刚安装完xampp时,apache服务器是启动不了的。

今天应用xampp修改wordpress的时候发现一个严重的问题,apache启动不了,不论点击多少次start,都显示如下:
busy…
apache started [port 80]
经多方查询资料,原来是因为80端口被别的程序占用了,所以这个端口很busy,从而导致apache无法启动的。解决方法一如下:
1、运行-cmd,然后输入netstat -ano,回车;
2、查看本地地址中包含xx.xx.xx.xx:80的那一行的pid,为几个数字,把这几个数字记下来;
3、启动“任务管理器”——“详细信息”,找到对应的“PID”,“结束任务”;
4、然后查看与刚才那个pid对应的是哪个程序,很容易就会找到,就是它占用了80端口;
5、直接将其停止或者使用优化大师等工具使之开机不启动。
好了,可以用了。
第二种解决方法:更换端口(尽量不要使用0-1023端口,这个是系统保留端口)
我的asp用的iis服务器是xp的默认web80端口,jsp用的tomcat服务器用的是tomcat安装时的默认端口8080,那么php下xampp里边的apache我就将它的默认80端口修改为8081(随便其它的只要不被占用就可以了)其它的不就ok了
既然如此如何修改apache的端口呢?到xampp的安装目录下,点击进入apache\conf下,可以看到“httpd.conf”文件,用文本煸辑器打开,将所有的80修改为8081,Listen 80 -〉Listen 8081
ServerName localhost:80-〉ServerName localhost:8081
然后在XAMPP Control Panel中重新启动apache。
怎么还显示如下:
busy…
apache started [port 80]
管它三七二十一,在ie里输入地址:http://localhost:8081测试,打不开,都修改apache的端口了,试着停止iis的web服务。再启动
apache。还显示如下:
busy…
apache started [port 80]
ie里输入地址:http://localhost:8081测试,成功打开xampp的网页,提示:
欢迎使用XAMPP for Windows Version 1.7.0 !
祝贺您:
您已经成功安装了XAMPP!
虽然在xampp-control的对话框中还是显示apache启动了80端口,但实际的占用端口是8081。再重新启动iis服务,apache和iis都可以在各自的8081和80端口工作了。
重新启动电脑,apache又不能用了,试着 关闭iis服务,启动apache-〉http://localhost:8081测试成功;接着启动iis服务,
http://localhost:8081测试成功
真的是个好奇怪的调试过程,不管怎么说,是可以用了,
直接xampp\apache_start.bat启动apache,出现提示443端口占用,原来IIS占用了ssl端口(即443端口https),这就好办了,修改xampp\xampp\apache\conf\extra\httpd-ssl.conf文件 ,将所有的443 都修改为 4433 或关闭ssl服务,再次测试一切ok了。
当然作为开发调试环境如果不需要ssl服务可以关闭ssl服务,方法还是修改xampp\apache\conf\httpd.conf文件,找到"Includeconf/extra/httpd-ssl.conf "用 #字符 注释掉就关闭ssl服务了。
xampp调试过程边做边写,思路随乱......
解决常见问题分析方法:
用xampp启动apache时提示busy,apachestarted.提示说started,但是在apache服务器后的状态并没有显示running,表明没有启动成功。
解决方法:
1.在xampp控制面板启动apache如启动不成功.
2.进入xampp的安装目录下的apache目录,如c:\xampp\apache\logs\
3.可以看到有个error.log的文件.
4.打开该文件,到文件最后,可以详细了解到启动失败的原因。
5.针对不同的失败原因,寻求解决之策。
解决案例
1.在xampp控制面板启动apache不成功
2.进入error.log查看,显示”make_sock: could not bind to address0.0.0.0:80
no listening sockets available shutting down”
3.可以看傣,这是在侦听80端口时个错,可能80端口已经被其它应用程序占用了。apache启动不成功绝大部分都是因为端口问题。
4.打开c:\xampp\apache\conf\目录
5.目录下有一个httpd.cnf文件,用记事本打开,将里面的”80″全部修改为其它端口例如”8082″修改之后,保存退出。
6.重新在xampp控制面板,启动apache,成功,状态为running.
注意:因为浏览器的默认端口是80所以修改了apache的侦听端口之后,在浏览器中浏览时,需要localhost后加上端口。如http://localhost:8082/代替修改前的http://localhost/,当然localhost= 127.0.0.1,用http://127.0.0.1:8082/同样。

以上就介绍了Xampp中Apache无法启动的解决方法,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。