第一次搭建Apache+PHP+MySQL的开发环境,发现Apache与PHP的整合非常麻烦,先整理记录如下:

一、安装Apache

1.登录http://httpd.apache.org/download.cgi

2.如图所示,选择某个版本的 “Files for Microsoft Windows“ 选项,进入下载页面;

3.如图所示,选择第一项“ApacheHaus”;在新的界面中,会发现VC11和VC14,这里注意,一定要记住VC11和VC14的选择要和之后PHP的选择一致。

4.下载结束后,将文件解压缩到某个文件夹,如C:\Apache

5.用记事本打开C:\Apache\conf\httpd.conf文件,找到:Define SRVROOT,设置Define SRVROOT "C:\Apache",这里设置的值是之前解压缩的文件夹位置。

如果需要修改端口,则继续找到 Listen 80,并将80改为要设置的端口。

6.打开cmd窗口,”C:\Apache\bin\httpd.exe" -k install -n apache ,安装apache服务,并将该服务名称命名为apache。

7.双击C:\Apache\bin\ApacheMonitor.exe,打开Apache控制台。点击start后,输入http://localhost,出现以下页面说明安装成功。

二.安装PHP

1.登录http://www.php.net/,选择自己要安装的版本,这里需要注意的是版本选择时VC11和VC14必须和之前Apache的选择一致。x86,x64必须和本机的实际情况一致。

2.将下载的文件解压缩到某个文件夹,如C:\php,并将根目录下php.ini-production 复制一份,并重命名为php.ini;

3.设置环境变量将C:\php和C:\php\ext加入环境变量PATH中,即在Path变量结尾加上;C:\php;C:\php\ext

三整合Apache与PHP

1.用记事本打开C:\Apache\conf

查找ServerRoot,修改ServerRoot "C:\Apache"(这里输入的是你解压apache安装包后放的位置)

查找#ServerName www.example.com:80 ,修改为 ServerName www.example.com:80 (去掉前面的#)

查找DocumentRoot "C:/Apache/htdocs" , 修改为DocumentRoot "C:/Apache/htdocs" (如果一样,就不用改)

查找<Directory "C:/Apache/htdocs"> ,修改为 <Directory " C:/Apache/htdocs "> (如果一样,就不用改)

查找DirectoryIndex index.html ,修改为 DirectoryIndex index.html index.php index.htm (这里我们添加了index.php index.htm)

查找ScriptAlias /cgi-bin/ "C:/Apache/cgi-bin/"  ,修改为 ScriptAlias /cgi- bin/ " C:/Apache/cgi-bin" (如果一样,也不用改)

查找<Directory "C:/Apache/cgi-bin"> 修改为 <Directory "C:/Apache/cgi-bin/">  (如果一样,也不用改)

在 C:\Apache\conf\httpd.conf最后一行添加添 加 LoadModule php5_module "C:/php/php5apache2_4.dll" 让 apache 支持php (请确认C:/ php/有php5apache2_4.dll,如果你下载的是我提供的连接肯定是有的)

添加 AddType application/x-httpd-php .php .html .htm

添加 PHPIniDir "F:/phptools/php5.5" (告诉apache php.ini的位置)

至此,httpd.conf 配置完成,保存httpd.conf 。

2.用记事本打开F:\php\php.ini

  将; extension_dir = "ext"修改为 extension_dir = "ext" (去掉extension前面的分号)

  将;extension=php_mbstring.dll 修改为 extension=php_mbstring.dll(去掉extension前面的分号,这是php多字节字符串扩展)

  将;extension=php_mysql.dll修改为 extension=php_mysql.dll(去掉extension前面的分号)

  将;extension=php_mysqli.dll 修改为 extension=php_mysqli.dll(去掉extension前面的分号)

三、测试

  创建phpinfo.php,写入<?php phpinfo(); ?>,并布置到C:\Apache\htdocs下,打开apache服务,在浏览器输入http://localhost/phpinfo.php,出现如下页面,则说明整合成功!

四、常见问题

1.”cannot load php5apache2_4.dll into server”问题的解决

出现这个问题是因为Apache与PHP的V11,V14版本不匹配,或者PHP的x86与x64版本选择错误。所以一定在下载时在选择相匹配的版本。

2.用命令行开启apache服务器

当用ApacheMonitor.exe不能正常代开apache时,可以尝试这样做:切换到apache的bin目录,执行如下命令:httpd.exe -w -n "apache2.2" -k start。这个命令可以打印出不能打开apache的原因。

Apache+PHP环境搭建的更多相关文章

  1. windows下php+apache+mysql环境搭建

    在Windows 7下进行PHP环境搭建,首先需要下载PHP代码包和Apache与Mysql的安装软件包. PHP版本:php-5.3.2-Win32-VC6-x86,VC9是专门为IIS定制的,VC ...

  2. [jmeter]linux下自动测试环境+持续集成ant+jmeter+Apache(httpd)环境搭建与使用

    前言:考虑搭建一个接口性能自动化测试平台,时间又比较紧急,所以就现想到了用jenkins+ant+jmeter完成,考虑到在linux环境中本身就可以设置定时任务,暂时该自动化用例还不与项目集成关联, ...

  3. [PHP] - Apache + PHP 环境搭建

    Apache和PHP的版本分别为: httpd-2.4.9-win64-VC11.zip php-5.6.9-Win32-VC11-x64.zip 下载地址: php-5.6.9-Win32-VC11 ...

  4. Linux + Apache + PHP 环境搭建

    搭建环境: Ubuntu 15.04 Apache 2.4.16 PHP 5.6.15 1 安装Apache 先安装依赖程序(都安装在 /usr/local/ 目录下) apr-1.5.2.tar.g ...

  5. Apache + PHP 环境搭建

    环境: Win7 64位 php-5.6.19-Win32-VC11-x64 httpd-2.4.18-win64-VC11 下载地址: php:  http://windows.php.net/do ...

  6. linux下Apache+Svn环境搭建(五)

    在搭建之前先准备好如下包,建议去apache官网去下载:http://httpd.apache.org/ apr-1.4.6.tar.gzapr-util-1.4.1.tar.gzhttpd-2.2. ...

  7. windows下apache运行环境搭建

    apache的安装 要求: 1,不要安装到有中文的目录中: 2,尽量将apache,php,mysql安装到一个总的目录,便于管理.(如都建立在amp目录下,然后在该目录下分别建立apache,php ...

  8. php + apache + mysql环境搭建

    别人写的很好,若是不改变php默认访问路径的话,能够成功搭建是没问题的 http://www.cnblogs.com/pharen/archive/2012/02/06/2340628.html

  9. Mac下PHP+Apache+MySQL环境搭建

    一.启动Apache 有两种方法 1.打开网络共享 打开"系统偏好设置"->"共享",在"互联网共享"那一项前面打√. 2.打开终端, ...

随机推荐

  1. 应用maven自动部署的脚本

    @(编程) 最近写了一个自动部署的脚本,可以一键部署到测试服务器或者生产服务器上,包括一个函数脚本和一个调用脚本,比较简单,记录如下. 特点如下: 部署前自动备份 可以部署tomcat项目和java项 ...

  2. CF766 ABCDE

    LINK A 找最长非公共子序列..如果两串不是完全相同 显然就是最长的那个 /** @Date : 2017-04-15 19:52:34 * @FileName: 766A.cpp * @Plat ...

  3. Linux type命令的用法

    一般情况下,type命令被用于判断另外一个命令是否是内置命令,但是它实际上有更多的用法. 1.判断一个名字当前是否是alias.keyword.function.builtin.file或者什么都不是 ...

  4. indexof()函数

    js 判断字符串是否包含某字符串,String对象中查找子字符,indexOf, 成功,返回索引值,失败返回 -1. 转载: http://www.cnblogs.com/fishtreeyu/arc ...

  5. Sublime之插件的安装(一)

    由于最近刚换了一个工作,所以决定重新申请一个blog,把工作当中遇到的一些问题记录下来,方便自己下次忘记,也希望能与一起需要的小伙伴一起共勉. 如果有不同的观点或者是不同的看法,大家都可以畅谈,我一直 ...

  6. 爬虫--PySpider框架

    PySpider框架 PySpider框架的作用

  7. cookie、localstroage与sessionstroage的一些优缺点

    1.    Cookie 在前端开发中,尽量少用cooie,原因: (1)   cookie限制大小,约4k左右,不适合存储业务数据,尤其是数据量较大的值: (2)   cookie会每次随http请 ...

  8. unity3d 资源文件从MAX或者MAYA中导出的注意事项

    unity3d 资源文件从MAX或者MAYA中导出的注意事项     1.首先,Unity3d 中,导出带动画的资源有2种导出方式可以选择:    1) 导出资源时,只导出一个文件,保留模型,骨骼和所 ...

  9. android Timer TimerTask用法笔记

    Android中经常会遇到执行一些周期性定时执行的任务.初学的时候经常会使用Thread.sleep()方法.在android中,有Timer可以专门干这个事情. 先看看Timer.class中都是些 ...

  10. 如何通过掩码计算可用的IP数量

    假设掩码是28,28也就是28个1.本身掩码是255.255.255.255那么转换成二进制也就是 11111111,11111111,11111111,11111111 那么28个1也就是: 111 ...