今天启动Apache, 出现了一个对话框提示“the requested operation has failed”。不能启动,非常郁闷。
看了很多文章,总结起来大概有两个方面导致上面的错误:
一. 是80端口被其他程序或者服务给占用了;
二. 是配置出现错误,也就是安装目录下的Apache2.2\conf\httpd.conf,这个配置文件里面的问题;
怎么查端口的使用情况呢?
在命令行使用netstat -aon|findstr "80"
这个命令就可以查看到使用80这个端口的程序了。然后我就看到了一些使用80端口的进程PID,通过tastlist /FI "PID eq ***" (***表示PID)就可以看到是哪些程序在使用了(或者直接通过任务管理器->进程->查看->选择列,把PID勾上,也可以看到相应的进程)。
之后,把他们统统关掉。然后start Apache,结果还是出现一样的问题。
没办法,好在还有一种可能性(一开始我就奇怪了,我都从来没配置过httpd.conf,怎么问题会在它上面)。看网上的资料,在命令行内进入安装目录Apache2.2\bin,使用命令httpd -t,然后出现
“httpd: Syntax error on line 248 of E:/PHPCMS/Apache2.2/conf/httpd.conf: </Direct
ory> without matching <Directory> section”,
看它提示信息,说明,在这个配置文件里面的248行, </Directory>没有匹配的<Directory>。
定位到这个文件的248行,发现果然</Directory>匹配的<Directory>被无意中注释了。
解决方法:把217行的#<Directory "E:/PHPCMS/htdocs/www.aerchi.com"/>的# 取消。
好了,再次启动Apache,成功启动了。
乐意黎原创
本文地址:http://blog.csdn.net/aerchi/article/details/50692627