Windows系统下Apache、PHP无法启动问题总结

最近经常被问到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?id=30679
vc10运行库x86版本:http://www.microsoft.com/en-us/download/details.aspx?id=5555
vc10运行库x64版本:http://www.microsoft.com/en-us/download/details.aspx?id=14632
vc9运行库x86版本:http://www.microsoft.com/en-us/download/details.aspx?id=5582
vc9运行库x64版本: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有没有提示错误。根据错误提示,纠正错误。

(0)

相关推荐

  • Windows下安装Apache 2.2.21图文教程

    本文详细介绍了在Windows平台上安装Apache的过程,希望对初次安装Apache的朋友有所帮助. 1. 软件准备 我们以Apache2.2.21版本为例 Apache 官方下载地址:httpd-2.2.21-win32-x86-no_ssl.msi 2. 开始安装 双击httpd-2.2.21-win32-x86-no_ssl.msi开始安装.出现安装欢迎界面. 图1 欢迎界面 直接点"Next"继续,出现授权协议. 图2 授权协议 选择"I accept the te

  • Windows下Apache + PHP SESSION丢失的解决过程全纪录

    今天的工作是迁移一个PHP站点至新服务器. 创建一台Windows Server 2008虚拟机,并在其上停掉net stop http服务(避免争抢80端口),安装配置 Apache + PHP,迁移站点至新服务器,站点正常打开,Apache + PHP运行正常,连接MySql Server正常,一切都美好,本想着半小时完成的工作,紧接着噩梦开始了. 该站点使用单点登录,登录过程包含JavaScript异步操作,包含SOAP调用Web Service.登录却直接跳回了登录页面,没有任何错误提示

  • Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)

    由于换电脑或重装系统后常需要重新搭建PHP环境,此次简单记录一下Windows下搭建PHP环境的过程,具体步骤可以参照网上资料 准备工作: Windows下手工搭建PHP环境需要先下载相应的软件,需要注意的是Apache与PHP的版本必须保持一致(均为32位或64位),如果版本不一致将导致整合Apache与PHP不成功,即修改配置文件后启动Apache报如下图所示的错误: 其实在http://windows.php.net/download/上有很详细的描述,读者可以根据自己的需要选择相应的版本

  • windows下apache的简单命令

    1) 安装apache服务 httpd.exe -k install 2) 指定要安装的服务的名称(适用于电脑上有几个不同的Apache服务设施) httpd.exe -k install -n "MyServiceName" 3) 指定服务配置文件的路径和名称 httpd.exe -k install -n "MyServiceName" -f "c:\files\my.conf" 注:若不使用特殊参数(如httpd.exe -k instal

  • Windows下PHP安装路径配置错误导致Apache无法启动的解决方法

    LoadModule php5_module "C(/D):/Program Files/php5/php5apache2_2.dll"  PHP安装路径引起的apache无法启动错误 今天给一同事的PC机安装部署web服务的时候,按同事要求把所有程序文件放到安装目录的program files下,于是我把apache安装到了c:\program files下面,php也安装在c:\program files下.装完MySql,配置好apache和php的配置文件后,重起发现问题了 A

  • Windows下使用apache模块实现合并多个js、css提高网页加载速度

    现在的网站表现力越来越丰富,页面加载的js和css自然也越来越多.当网站页面上的js和css太多,浏览器打开页面的速度就会很慢,明显降低了用户的体验.使用mod_concatx, 可以合并多个文件在一个http响应报文中,可以有效提高js/css的加载速度. 示例效果如下: mod_concatx模块是在mod_concat基础上修改的,感谢他们的工作. 原有的mod_concat模块有很大的参考价值,但实际作用不大. 该模块存在以下三个问题: 1.每次都会重新向客户端发数据,没有合理利用浏览器

  • Windows下apache ant安装、环境变量配置教程

    一.安装ant 到官方主页http://ant.apache.org下载新版(目前为Ant1.8.1)的ant,得到的是一个apache-ant-1.8.1-bin.zip的压缩包.将其解压到你的硬盘上,例如:C:\apache-ant-1.8.1. 二.配置环境变量 window中设置ant环境变量: ANT_HOME    C:/ apache-ant-1.8.1 path        C:/ apache-ant-1.8.1/bin classpath   C:/apache-ant-1

  • 在Windows服务器下用Apache和mod_wsgi配置Python应用的教程

    最近开发了一个 Google Analytics 相关的应用,但需要在 Windows 下部署,结合网上的相关经验,最终选择了 apache+mod_wsgi 这样的配置. 修改python应用 复制代码 代码如下: Note that mod_wsgi requires that the WSGI application entry point be called 'application'. If you want to call it something else then you wou

  • Windows系统下Apache服务器无法启动的问题解决

    关于apache无法启动主要是80端口的问题,下面我们来看一下关于端口被占的处理办法 解决方案:1:在dos下运行netstat -ano 2:在xampp control panel中点setup打开命令界面, 3:选择6 enable mob_perl 4:重新启动xampp,此时运行http://localhost就应该正常工作了 第三种情况是网上一些网友遇到的问题: 与端口绑定时出现问题,未绑定到需要的端口 这是你可以根据error.log中的提示,退出占用端口的程序,这样应该能启用ap

  • Windows系统下解决PhPStudy MySQL启动失败问题

    报错 Apache\Nginx服务正常启动了,但是MySQL却一直启动失败. 解决流程 查看端口是否被占用 打开系统自带的资源管理器,查看监听端口3306是不是被占用,下图中3306端口被mysqld.exe占用,mysqld.exe是phpstudy自带的mysql服务,如果非mysqld.exe占用了3306,那么可以跟着下面的步骤去关闭. 打开系统自带的服务 切换本地MySQL服务 发现服务中有两个MySQL服务,一个是MySQL,一个是MySQLa.原因是,我之前在本地就安装过了mysq

  • Windows系统下Apache、PHP无法启动问题总结

    最近经常被问到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 根据错误提示,

  • Windows系统下MySQL无法启动的万能解决方法

    MySQL启动报错 window10上安装了MySQL之前使用都是执行net start mysql 启动,执行net stop mysql关闭. 某天开始启动报错"MySQL 服务无法启动","请键入 NET HELPMSG 3523 以获得更多的帮助". 如果再执行启动命令会报"服务正在启动或停止中,请稍候片刻后再试一次". 解决方案 这种问题网上有 修改配置文件my.ini 删data目录下文件 重装MySQL 等多种解决方法. 前两种方案

  • 在windows系统下如何安装memcached的讲解

    Memcached 作为一个高性能的分布式内存对象缓存系统,通常被用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached基于"Key=>Value"方式组织数据,基于网络连接方式完成服务.需要注意的是memcached使用内存管理数据,所以它是易失的,当服务器重启,或者memcached进程中止,数据便会丢失,所以memcached不能用来持久保存数据. 下面我们讲解一下在windows系统下

  • Windows系统下nodejs、npm、express的下载和安装教程详解

    1. node.js下载 首先进入http://nodejs.org/dist/,这里面的版本呢,几乎每个月都出几个新的,建议大家下载最新版本,看看自己的电脑是多少位的,别下错了. 下载完解压到你想放的位置就好了,解压后你会发现里面有node.exe.我解压到了D:\software_install文件夹. 接下来去命令行,即点击电脑左下角的开始-->运行-->cmd. 进入node.exe所在的目录,输入node -v,查看你的node版本.我的路径如下图所示: 如果你获得以上输出结果,说明

  • Windows系统下MySQL添加到系统服务方法(mysql解压版)

    MySQL软件版本:64位 5.7.12 1.首先配置MySQL的环境变量,在系统环境变量Path的开头添加MySQL的bin目录的路径,以";"结束,我的路径配置如下: 2.修改MySQL根目录下的my-default.ini文件的内容:主要修改2个属性:basedir和datadir. basedir:MySQL的根目录: datadir:数据库数据的保存目录(目录需要手动创建): 需要注意的几点: 目录的斜杠最好用反斜杠,要不需要转义或者加双引号: datadir的目录必须事先创

  • Windows 系统下安装 IntelliJ IDEA 的方法(图解)

    首先,进入官网下载 IntelliJ IDEA 可执行文件: https://www.jetbrains.com/idea/ 如上图所示,进入"Download IntelliJ IDEA"页面,显然咱们可以看到 IntelliJ IDEA 分为两个版本,分别为: 旗舰版(Ultimate) 社区版(Community) 其中,旗舰版是收费的,社区版则是免费的.至于两者的区别嘛,就是旗舰版比社区版的功能更为齐全!如果你想用 IntelliJ IDEA 进行大型项目开发的的话,啥也别说了

  • windows版本下mysql的安装启动和基础配置图文教程详解

    下载: 第一步 : 打开网址(进入官网下载) :https://www.mysql.com ,点击downloads之后跳转到https://www.mysql.com/downloads 第二步 :跳转至网址https://dev.mysql.com/downloads/,选择Community选项 第三步 :点击MySQL Community Server进入https://dev.mysql.com/downloads/mysql/页面,再点击5.6版本的数据库 第四步:windows操作

  • Windows系统下安装VirtualBox及安装Ubuntu16.04的详细教程

    1.软件介绍 VirtualBox VirtualBox 是一款免费的开源虚拟机软件,所谓虚拟机软件,就是能够提供各种模拟的硬件环境,并且在其上安装各种操作系统,目前支持Window,Linux,Mac OS X. 其下载地址可以点击这里.点击链接后,因为是要在window下安装,可以参考下面,直接点击红框部分的链接下载widnow版的VirtualBox 下载好了后,直接双击打开,类似下面的图文步骤直接不停点击下一步安装即可 Ubuntu Ubuntu,中文称呼"乌班图",是一个开源

随机推荐