今天早上打开电脑时, 发现apache 服务器没有启动起来。又手动启动了一下,也是没有起来。看了一下系统错误日志如下:
事件类型: 错误
事件来源: Service Control Manager
事件种类: 无
事件 ID: 7024
日期: 2013-3-8
事件: 9:14:49
用户: N/A
计算机: CTFO-72178A978E
描述:
Apache2.2 服务因 1 (0x1) 服务性错误而停止。
有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。
在网上查找,有两个可能的解决方法
1、 问题出在http.conf, 修改文件中的 serverName 127.0.0.1:80 => 127.0.0.1 ,就可以解决。我看了一下我的文件,发现在我的配置文件里这一行是被注释的,不可能了。
2、 服务的端口被占用,查看了一下80端口,没有被占用。
重新安装apache 2.2 ,选择修复模式,出现了以下的窗口:
原来是php的配置出了问题,记得我重装过两次PHP,估计是配置文件被改乱了。在http.conf 的最后找了php配置,果然是有问题的。
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
##PHPIniDir ""
##LoadModule php5_module "php5apache2_2.dll"
#LoadModule php5_module "D:/php/PHP/php5apache2_2.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
原来加载php的部分被注释了。将第四行前的#去下,改为:
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
#PHPIniDir ""
#LoadModule php5_module "php5apache2_2.dll"
LoadModule php5_module "D:/php/PHP/php5apache2_2.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
启动成功