DDR爱好者之家 Design By 杰米

最近经常被问到Apache无法启动的问题,所以写一篇文章,总结一下Windows下经常遇到的 Apache/PHP 无法启动的情况的解决方法。

Apache/PHP 无法启动分两种情况:

1、Apache无法启动,没加载php也无法启动
2、Apache可以启动,但加载php后无法启动

第一种情况多数是Apache配置问题,或者80端口被占用

使用Apache的配置检查:

复制代码 代码如下:
C:\>D:\Apache2.2\bin\httpd.exe -t
Syntax OK

根据错误提示,纠正错误。
如果是80端口占用,这个在Windows机器比较常见,经常被IIS抢占。

注销IIS服务:
复制代码 代码如下:
iisreset /stop
iisreset /disable

sc stop w3svc
sc delete w3svc

如果不是IIS,可以使用命令杀掉强占80端口的进程:
复制代码 代码如下:
# 查找占用80端口的进程pid
netstat -ano|find ":80"

# 假设该进程pid为2013,查看进程名称:
tasklist /fi "pid eq 2013"

# 杀掉该进程命令
taskkill /f /pid 2013

如果不是上述问题,那可能是系统网络问题,如下警告:
复制代码 代码如下:
setup_inherited_listeners(), WSASocket failed to open the
inherited socket.

使用命令修复Windows网络:
复制代码 代码如下:
netsh winsock reset

重启机子,如果问题还无法解决,尝试以下方法:

本地连接 -> 属性 -> 高级 -> Wins标签 -> 去掉启用LMhosts查询前的勾选
复制代码 代码如下:
/********  无情的分割线 ********* /
  作者:没有开花的树
/ *******   无情的copy  *********/

第二种多数是PHP编译器的问题:

查看Apache错误日志,有类似下面这些内容:
复制代码 代码如下:
httpd.exe: Syntax error on line 63 of D:/Apache2.2/conf/httpd.conf: Cannot load D:/php/php5apache2_4.dll into server: %1 \xb2\xbb\xca\xc7\xd3\xd0\xd0\xa7\xb5\xc4 Win32 \xd3\xa6\xd3\xc3\xb3\xcc\xd0\xf2\xa1\xa3

php5.5使用的编译器是vc11,php5.4和php5.3的是vc9,php5.2是vc6。同时还要注意是x86版本,还是x64版本。目前只有php5.5提供x64版本,其他都只有x86版本。
apache.org下载的Apache都是vc6版本,否则就根据不同文件说明安装不同的运行库。

vc11运行库x86/x64版本:http://www.microsoft.com/en-us/download/details.aspx"http://www.microsoft.com/en-us/download/details.aspx">http://www.microsoft.com/en-us/download/details.aspx"http://www.microsoft.com/en-us/download/details.aspx">http://www.microsoft.com/en-us/download/details.aspx"http://www.microsoft.com/en-us/download/details.aspx">http://www.microsoft.com/en-us/download/details.aspx"http://www.microsoft.com/en-us/download/details.aspx">http://www.microsoft.com/en-us/download/details.aspx?id=15336
如果不清楚你的情况,可以安装全部运行库,再也不用为这个问题担忧了。

如果Apache/PHP还无法启动,那最可能是php5_module模块的问题:

1、Apache2.0对应的PHP模块为 php5apache2.dll
2、Apache2.2对应的PHP模块为 php5apache2_2.dll
3、Apache2.4对应的PHP模块为 php5apache2_4.dll

换句话说,根据php5_module模块,可以知道当前版本php支持哪种Apache

所以,Apache/PHP的搭配有以下几种情况:

1、php5.2支持Apache2.0和Apache2.2;
2、php5.3、php5.4同时支持Apache2.2和Apache2.4;
3、php5.5只支持Apache2.4

除非你自己手动编译php5_module模块,否则只能有以上3种选择。

如果Apache/PHP还是无法启动,检查php配置(php.ini)是否存在,运行php.exe有没有提示错误。根据错误提示,纠正错误。

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。