win7下安装apache+mysql+php后服务器启动失败解决

来源:互联网 发布:我从汉朝来 知乎 编辑:程序博客网 时间:2024/05/04 16:36

今天想在win下搭个php开发环境,之前也做过相关的工作,所以也没太在意,因为机子已经装上了Mysql,也就懒得重新装了。

先把apache2.2装上,装好后启动没问题,页面访问也是可以的,接着装php5.3,因为用来开发以及学习用的,所以把能选的组件都选上了,安装没问题,php模块已自动加载到apache 中,不用像以前那样要自己手动加载模块,安装完PHP后,重启apache时却发现启动失败,没道理啊。我什么都没动,就装了个PHP,难道PHP装得有问题?

不急,一步步来看,先查看apache日志文件,嗯,有问题,日志显示如下:

[Tue May 01 21:12:16 2012] [warn] pid file D:/ProgramFiles/Apache Software Foundation/Apache2.2/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?

这是什么东西?没见过,不要紧,问一下谷哥和度娘,直接拷贝上去,一搜,果然是有众多同道中人,可是上面众说纷纭,有说是apahce没有完全关闭造成的,有说是没加载到相应的PHP dll造成的,有说是环境变量造成的,不一而足。经验不足,只能一个个来试,于是,设置环境变量、重启系统等一连串的操作,但错误还是依旧,该起不来的还是起不来。我要晕了,终于在某个论坛看到有个仁兄介绍可以直接使用控制台启动apache可以看到出错信息,于是马上执行,结果很让人振奋,果然报错了,提示找不到php_pdo_mssql.dll模块,天啊,不是完全安装了吗,还有漏的,于是,马上把php.ini中加载该模块的相关语句注释掉,apahce马上停止了罢工,开足马力跑了起来,不容易啊。

其实,之前在找问题所在的时候也看到有类似的同志在博客上写到是缺少某些模块造成的,但是我按照上面所说的到c:\Windows\Temp\php-errors.log 中找相关报错信息时,却发现文件是空的,什么也没有,不像他说的那样会直接把错误在日志中打出来,于是我以为他与我遇到的问题不一样,到最后才发现,我们所遇到的问题在根本上来说是一样的,只不过可能由于版本或其他的原因,使得他所使用的排错方式在我这边却行不通,才造成了我的误解。

如果以后有类似的问题,可以直接先查看apache日志,再查看php错误日志,如果遇到我这种php错误日志是空的情况,可以在控制台中运行apache,看是否有出现相关提示,不一定是如我这种缺少mssql模块的,也有可能是缺少其他模块的,找出原因之后,修改php.ini中的相关设置,这样,问题就能基本解决。

今天又学到了一点,积累啊!

原创粉丝点击