Fork me on GitHub
文章目录
  1. 1. 前言
  2. 2. apache无法启动
  3. 3. apache无法启动终极解决办法
  4. 4. 感谢

前言


在使用apache的过程中,遇到了很多问题,也学会了很多,特将一些常见的问题总结出来,以供参考。

apache无法启动


The request operation has failed

一般来说,都是端口被占用所导致的。apache默认使用80端口,如果80端口被占用,apache就会启动失败。目前我已知的会占用80端口的软件有:迅雷,IIS,Skype。欢迎补充!

解决办法

  1. 修改apache的默认端口,或者开机后,立即启动apache,让它使用80端口。
  2. 也可以关闭或杀死使用80端口的软件,但如果是IIS,最好修改一下端口。

apache无法启动终极解决办法


上面所说的只是比较特殊的情况,也许并不能找到问题之所在。下面说一个比较一般的方法,对各种问题基本通吃–使用命令行启动apache服务。用命令行模式启动apache,并带上参数,apache会提示你哪句有误,然后就可以针对性的解决,可以发现端口冲突问题,软件冲突问题,http.conf配置问题等。

  1. 在N:\MyWorks\Apache\bin目录处打开cmd命令行,输入如下命令:
1
httpd.exe -w -n "Apache" -k start

这里,引号内的是你的apache服务的名称,不同的机子可以有些许差别。

  1. 之后等一会,如果启动不成功,会提示详细的错误信息。根据错误信息,去做响应的修改即可。
  2. 我的问题是启动服务时提示the requested operation has failed,一开始以为是80端口被占用的问题,用netstat -ano一看,80端口没有被占用啊!但就是启动不了,很郁闷。使用上述方法用命令行启动后,提示信息如下:
    这里写图片描述
  3. 我明明配置apache监听80端口,也就是默认的,但是竟然还需要监听443端口,难怪,443端口被别的软件所占用了,apache启动自然报错了!不过,有这个方法,以后apache出问题也可以很好地差错了。
  4. 关于如何kill掉占用端口的进程:用netstat -ano找到占用该端口的进程号,也就是PID,然后打开任务管理器,切换到【服务】一栏:
    这里写图片描述

感谢

感谢访问我的个人博客的朋友,如果您感觉本站对您搜索的问题有所帮助,并感觉对本站还满意的话,顶一下吧,希望您把本站分享给您的朋友!在此对您表示由衷的谢意! :)