该博文参考的资料来源于:

http://wenku.baidu.com/view/0e4c569ddd3383c4bb4cd267.html

http://www.cnblogs.com/pharen/archive/2012/02/06/2340628.html

http://www.admin10000.com/document/54.html

http://blog.csdn.net/zutsoft/article/details/21651041

昨天花了差不多一天的时间,跳过无数“坑”之后,把WAMP环境给搭建上了。为何说坑,是因为不理解不知道,原来最新版的apache和最新版的php5.5存在不兼容的问题。还有Thread safe 和no thread safe版本之间的区别,PHP版本中的VC6、VC9、VC11之间的区别,现在记录一下我搭建的过程。包括各种谷歌后学习到的内容。

一、准备工作,下载软件

注:以下是我使用的版本。

apache:httpd-2.2.22-win32-x86-openssl-0.9.8t.

下载地址:http://www.apache.org/

MySQL:mysql-installer-community-5.6.19.0.msi

下载地址:http://dev.mysql.com/downloads/windows/installer/

PHP:php-5.3.1-Win32-VC6-x86

下载地址:http://windows.php.net/downloads/releases/archives/

二、开始安装软件

(一)安装apache

双击安装,与安装其他Windows软件没有什么区别,在填Server Infomation时,并没有特殊规定,只要输入的信息符合格式即可。

(注:这里选择安装类型,我一般选择Custom,这里可以自己设置安装路径,看自己喜欢)

安装完成之后,在浏览器输入http://localhost,如果显示It Works!,表示Apache安装成功。

(二)安装PHP

安装PHP:将php-5.3.1-Win32-VC9-x86.zip解压到一个目录即可。

(三)安装MySQL

插一句,昨天是因为下载错MySQL,所以搞得很头疼,建议到官网下载,我上面发的那个链接,下载的那个版本是ok的。

双击安装,如果需要更改安装目录,则在Choose Setup Type选择Custom(我比较喜欢自定义安装,建议选择自定义Custom

 
MySQL下载完成后,找到下载到本地的文件,按照下面所示的步骤双击进行安装: 
步骤1:双击MySQL安装程序(mysql-installer-community-5.6.10.1)会弹出如下图1.4所示:

步骤2:单击图1.4中的“Install MySQL Products” 文字,会弹出的用户许可证协议窗口, 
如下图1.5所示:

步骤3:选中“I accept the license terms” 的前面的选择框,然后点击【Next】按钮,会进入查         找最新版本界面,效果如下图1.6所示:

步骤4:单击【Execute】按钮,会进入安装类型设置界面,效果如下图1.7所示。

步骤5:选择图1.7中的“Custom”选项,可修改安装路径或保持默认值,然后单击【Next】按钮, 
   弹出功能选择界面,如下图1.8所示。

步骤6:单击【Next】按钮,弹出安装条件检查界面,如下图1.9所示。

步骤7:单击【Next】按钮,进行安装界面,如下图1.10所示。

步骤8:单击【Execute】按钮,开始安装程序。当安装完成之后安装向导过程中所做的设置将在安装完成        之后生效,如下图1.11所示的窗口

步骤9:单击【Next】按钮,会进入服务器配置页面,效果如下图1.12所示。

步骤10:单击【Next】按钮,效果如下图1.13所示。

图1.13中的“Server Configuration Type”下面的“Config Type”下拉列表项用来配置当着服务器的类
型。选择哪种服务器将影响到MySQL Configuration Wizard(配置向导)对内存、硬盘和过程或使用的决策,可以选择如下所示的3种服务器类型:

 Developer Machine(开发机器):该选项代表典型个人用桌面工作站。假定机器上运行着多个桌面应用程序。将MySQL服务器配置成使用最少的系统资源。 
  Server Machine(服务器):该选项代表服务器,MySQL服务器可以同其它应用程序一起运行,例如FTP、email和web服务器。MySQL服务器配置成使用适当比例的系统资源。 
 Dedicated MySQL Server Machine(专用MySQL服务器):该选项代表只运行MySQL服务的服务器。
假定运行没有运行其它应用程序。MySQL服务器配置成使用所有可用系统资源。 
作为初学者,选择“Developer Machine”(开发者机器)已经足够了,这样占用系统的资源不会很多。

在Enable TCP/IP Networking左边的复选框中可以启用或禁用TCP/IP网络,并配置用来连接MySQL服务器的端口号,默认情况启用TCP/IP网络,默认端口为3306。要想更改访问MySQL使用的端口,直接在文本输入框中输入新的端口号即可,但要保证新的端口号没有被占用。

步骤11:单击【Next】按钮,在图1.13所对应的界面中,我们需要设置root用户的密码,在“MySQL Root 
password”(输入新密码)和“Repeat Password”(确认)两个编辑框内输入期望的密码。也可以单击下面的【Add User】按钮另行添加新的用户。(注:Current Root Password:为空;如果输入密码了在后面安装会报错)

步骤12:单击【Next】按钮,设置Windows Service Name<可默认>,此名为启动数据库服务名,要记住。 
效果如下图1.14所示。

步骤13:单击【Next】按钮,打开配置信息显示页面,如下图1.15所示。

步骤14:单击【Next】按钮,即可完成MySQL数据库的整个安装配置过程。接下来就可以登录上我们的MySQL数据库进行操作了。

Example:启动MySQL

可以直接使用命令行:

三、整合Apache+MySQL+PHP

(一)配置Apache

首先使用文本编辑工具(推荐 EditPlus )打开 E:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf 文件,这个文件是Apache的配置文件,下面几步都是在修改这个文件的内容。
要注意的是修改完 httpd.conf 文件需重新启动Apache服务,新设置才会生效。

1、让Apache加载PHP模块

找到 #LoadModule vhost_alias_module modules/mod_vhost_alias.so (大概在第128行),在这行的后面添加以下内容:

	LoadModule php5_module "E:/StuSoftware/PHP/php/php5apache2_2.dll"
AddType application/x-httpd-php .php
PHPIniDir "D:/WAMP/PHP"

LoadModule php5_module "E:/StuSoftware/PHP/php/php5apache2_2.dll" /*你下载的需要是VC6的版本,不然找不到这个php5apache2——2.dll文件,这是我遇到的其中一个坑,待会儿下面再说*
这句意思是以module方式载入PHP5模块。
AddType application/x-httpd-php .php
这句意思就是将.php扩展名的文件作为php脚本执行。你可以使用你喜欢的任何其他扩展名,如 .html、.php5 甚至是 .txt  来执行PHP。
PHPIniDir "D:/WAMP/PHP"
这句用来指定PHP的配置文件php.ini 所在的目录。
如果是Apache 2 以module模块方式运行php5的话,就可以使用 PHPIniDir 指令。

2. 修改网站存放目录

我们知道Apache默认的网站存放目录为Apache安装目录下的htdocs文件夹。当你更改网站存放目录,就必须修改相应的Apache配置。
在配置文件 httpd.conf 中查找 DocumentRoot(大概在182行),将其修改为指向网站目录的正确文件夹。我们这里改为

	DocumentRoot "F:/Workspace/PHP"

同时,查找 This should be changed to whatever you set DocumentRoot to(大概在207行),在它下面有行 <Directoy 默认的DocumentRoot >,将其修改为你自己配置的DocumentRoot 路径。我们这里修改为:

	<Directory "F:/Workspace/PHP">

我的网站存放目录是这般的:

3. 修改目录首页文件

在配置文件 httpd.conf 中查找 DirectoryIndex index.html (大概在244行)(快捷键查找按ctrl+F)将其修改成:

	DirectoryIndex index.html index.htm index.php

DirectoryIndex 指的是当客户浏览器访问的路径是一个目录时,Apache默认执行的文件。
以我们所修改的为例:当客户浏览器访问一个目录时,Apache会去找该目录下的index.html,如果没有再找index.htm,还没有再找 index.php。都找不到则默认显示该目录下的文件列表。参考文档:如果防止Apache显示文件列表

(二)配置PHP

打开PHP安装目录,即E:\StuSoftware\PHP\php,我们可以看到目录下有两个这样的文件 php.ini-development 和 php.ini-production,第一个是开发使用的配置文件,第二个是生产环境的配置,因为我们是在本机做开发,所以选择前者。将php.ini-development复制一份到同目录下,并改名为 php.ini。这个php.ini 就是当前使用的配置文件,以下几步都是在修改这个php.ini文件的内容。要注意的是,修改php.ini文件后需重新启动Apache服务,新设置才会生效。

1. 指定PHP扩展库的存放目录

在Windows下PHP的扩展库通常以 DLL 形式存放在PHP的ext目录中。
使用文本工具打开php.ini文件,查找extension_dir = "ext"(大概在809行),也就是在 On windows 下面那一行。把它前面的分号“;”去除掉,改为如下:

        extension_dir = "E:/StuSoftware/PHP/php/ext"

extension_dir 表示PHP扩展库的具体目录,以便调用相应的DLL文件。

2. 开启相应的扩展库

默认情况下许多PHP的扩展库都是关闭的,比如默认PHP不支持连接Mysql数据库,需开启相应的扩展库。
这里我们开启一些常用的扩展库。
查找 ; Windows Extensions(大概在941行),在它的下面是extension列表。
找到如下扩展:

        ;extension=php_curl.dll
;extension=php_gd2.dll
;extension=php_mbstring.dll
;extension=php_exif.dll
;extension=php_mysql.dll
;extension=php_mysqli.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_odbc.dll
;extension=php_sockets.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll

把以上extension 前面的分号 “;” 去掉。如果你希望加载其它扩展模块,方法相同,只要去掉前面的分号即可。

提示1:重启Apache提示 “unable to load dynamic library......php_curl.dll”,加载php_curl.dll错误。解决方法是拷贝 PHP 目录下的 libeay32.dll 和 ssleay32.dll 到 windows 目录或 windows/system32 目录下,只要是系统 Path 环境变量里包含的路径就可以。如果不想拷贝,你也可以直接把 PHP 路径放到系统 Path 环境变量里。 右击我的电脑=>属性=>高级=>环境变量=>系统变量里有个Path,双击打开,把你的PHP路径加个分号“;”再前面( ;D:\WAMP\PHP ),添加进去就OK了。重启Apache不再提示该错误。
提示2:Exif 扩展是用来显示图片的 exif 信息的,因为该扩展需要 mbstring.dll 支持,所以必须将 extension=php_exif.dll 这一行写到extension=php_mbstring.dll 的后面。
提示3:如果PHP自带的扩展库不能满足你的需要,你可以去 pecl.php.net 查找并下载你需要的库。windows用户可以去 pecl4win.php.net 或者 http://downloads.php.net/pierre/ 下载已经编译好的DLL文件,也可以去http://museum.php.net/php5/ 载PECL集合压缩包。
提示4:很多人在找php_zip.dll,其实从php5.3开始已经集成了zip扩展,直接使用就行了。你可以用<?php phpinfo()  ?> 找到zip扩展的说明。

目前针对不同用户,MySQL提供了2个不同的版本:  MySQL Community Server:社区版,该版本完全免费,但是官方不提供技术支持。 
 
MySQL Enterprise Server:企业版,它能够高性价比的为企业提供数据仓库应用,支持ACID事物处理,提供完整的提交、回滚、崩溃恢复和行级锁定功能。但是该版本需付费使用,官方提供电话及文档等技术支持。 
目前最新的MySQL版本为MySQL 5.6,可以在官方网站http://dev.mysql.com/downloads/下载该软
件。下图1.2所示的MySQL官网上单击图片上的“Download”超链接 或 点击左边标记处,然后按照提示一步步操作就可以将MySQL软件下载到本地计算机中了。注意这里我们选择的是数据库版本是“Windows (x86, 32-bit), MSI Installer”,如下图1.3所示。

3. 让PHP支持短标签

在 php.ini 配置文件查找 short_open_tag = Off (大概在266行)把它修改成:short_open_tag = On 让其支持短标签。
php的代码一般包含在<?php .... ?>的标签内,设置 short_open_tag = On 之后,可以写成更简洁的形式:<? .... ?>。

4. 配置PHP的Session功能

在使用session功能时,我们必须配置session文件在服务器上的保存目录。我们需要为session建立一个可读写的目录,这个目录最好独立于网站目录之外。
这里把目录上建在了D:\WAMP\sessiontmp,然后在 php.ini 配置文件中找 ;session.save_path = "/tmp" (大概在1467行),去掉前面的分号“;” ,改为如下:

        session.save_path = "D:/WAMP/sessiontmp"

5. 配置PHP的文件上传功能

同session一样,在使用PHP文件上传功能时,我们必须要指定一个临时文件夹以完成文件上传功能,否则文件上传功能会失败。
我们建立一个可读写的目录文件夹 D:\WAMP\fileuploadtmp,然后在 php.ini 配置文件中找到 ;upload_tmp_dir = (大概875行),修改为:

        upload_tmp_dir = "D:/WAMP/fileuploadtmp"

PHP默认上传文件大小不超过2M,要想上传大于2M的文件,请参考文档  配置php.ini实现文件上传功能

6. 设置时区

在 php.ini 配置文件查找 ;date.timezone = (大概在993行),去掉前面的分号“;” 改为如下:

	date.timezone = PRC

date.timezone是PHP5.1开始新增加的配置参数,用来设置时区。默认date.timezone是被注释掉的,也就是默认时区是UTC格林威治标准时间。
我们这里改为 date.timezone = PRC(PRC,People’s Republic of China,中华人民共和国),也就是日期使用中国的时区。这样可以解决时间相差八小时的问题。

(三)配置phpMyAdmin

直接在最开头给出的官网链接下载最新版的phpMyAdmin。

首先解压,然后将文件拷贝到网站根目录下,我的是F:\Workspace\PHP\phpMyAdmin

然后到浏览器访问http://localhost/phpMyAdmin/index.php

如图:

【安装phpMyAdmin过程出现的一个问题】

 登录phpMyAdmin提示1045登录不上MySQL

解决方法:直接解压文件,放到php工作空间下,然后使用mysql的用户名和登录密码登录,无需更改任何的配置一文件

之前说的php的版本VC6/9/11的区别,以及Threadsafe和no Threadsafe的区别:

VC6版本是使用Visual Studio 6编译器编译的,如果你的PHP是用Apache来架设的,那你就选择VC6版本。(现在PHP已经没有VC6了)。

VC9意思就是该版本PHP是用VisualStudio2008编译的,而VC11则是用VisualStudio2012编译的。这意味着

如果你下载的是VC9版本的,就需要先安VisualC++RedistributableforVisualStudio2008SP1,

如果你下载的是VC11版本的,就需要先安VisualC++RedistributableforVisualStudio2012.

搭建php首先看操作系统的版本,如果是Windows的在这里下:http://windows.php.net/download/

操作系统是32位还是64位?如果是32位的,就选择带“x86”的版本,如果是64位的,就选择带“x64”的版本。然后看WEB服务器是什么?如果是IIS系列,就选择带“Non Thread Safe”的版本,如果是Apache httpd系列,就选择带“Thread Safe”的版本。如果是Apache httpd还要看这个二进制版本是怎么编译的,有三种编译类型,分别是:VC6、VC9、VC11(分别代表Visual C++ 6、Visual C++ 2008、Visual C++ 2012)。这里就有麻烦了:PHP官方的最新版本5.5已经用VC11编译,5.4是用VC9编译的。可是Apache httpd的最新版本呢,至今还是用VC6编译。这意味着一个惊人的事实:Apache httpd的官方版本和PHP的官方版本竟然是无法兼容的!

到这里,全部安装都完毕,WAMP平稳运行。

搭建PHP开发环境 apache+MySQL+PHP 安装phpMyAdmin模块的更多相关文章

  1. Sublime text 3搭建Python开发环境及常用插件安装 转载

    Sublime text 3搭建Python开发环境及常用插件安装 一.环境准备 1.官方网站地址 2.Windows 10 3.Sublime Text 3 + 官网购买license(Just a ...

  2. PHP开发环境&amp;MySQL下载安装及配置流程

    PHP开发环境&MySQL下载安装及配置流程 因工作须要,从0開始学PHP,前几天看完视频教程后開始搞开发环境,到今天才好.这里把安装配置流程梳理一下分享出来. 一.概述 要搭建一个开发环境无 ...

  3. Sublime text 3搭建Python开发环境及常用插件安装

    参考  https://www.cnblogs.com/honkly/p/6599642.html 一.环境准备 1.官方网站地址 2.Windows 10 3.Sublime Text 3 + 官网 ...

  4. 搭建Java开发环境及相关工具

    本文主要记录下在window环境下,搭建Java开发环境,及需要安装的工具软件说明,旨在方便快速完成这些正真开始开发前的准备工作. 1.JDK安装及环境配置 此处安装JDK1.8的版本,官方下载地址: ...

  5. 通过IDEA搭建scala开发环境开发spark应用程序

    一.idea社区版安装scala插件 因为idea默认不支持scala开发环境,所以当需要使用idea搭建scala开发环境时,首先需要安装scala插件,具体安装办法如下. 1.打开idea,点击c ...

  6. IDEA搭建scala开发环境开发spark应用程序

    通过IDEA搭建scala开发环境开发spark应用程序   一.idea社区版安装scala插件 因为idea默认不支持scala开发环境,所以当需要使用idea搭建scala开发环境时,首先需要安 ...

  7. 抛弃强大的TFS ,借助于BugTracker.NET + Visual Source Safe + SourceLink搭建项目开发环境

    微软公司的Team Foundation Server是个强大的项目管理工具,如果用.NET开发,它应该是首选的项目管理平台.TFS的成本比较高,而且和Visual Studio集成紧密.比如TSF有 ...

  8. linux(ubuntu)和windows下面快速搭建android开发环境

    在windows和linux下面搭建android开发环境,一般要安装以下几个软件: 1.JDK安装 2.Eclipse安装 3.Android SDK安装 4.在eclipse里面安装ADT 5.e ...

  9. 在 ubuntu18.04 中搭建 Django 开发环境

    在Ubuntu 18.04 安装 python3.pip3.pycharm,搭建 Django 开发环境. 1.安装 python3 pip3 sudo apt-get install python3 ...

随机推荐

  1. WARNING L15: MULTIPLE CALL TO SEGMENT

    原网页:http://www.cnblogs.com/CuriosityWzk/archive/2011/12/25/2301090.html WARNING L15: MULTIPLE CALL T ...

  2. armv7a-mediatek451_001_vfp-linux-gnueabi-gcc: directory: No such file or directory 编译error

    release/vm_linux/output/hisense_android/mt5399_cn_android_JB/rel/obj/oss/source/arm_mali_ko/mali400- ...

  3. html 5 中的 6位 十六进制颜色码 代表的意思

    人的眼睛看到的颜色有两种: ⒈ 一种是发光体发出的颜色,比如计算机显示器屏幕显示的颜色: ⒉ 另一种是物体本身不发光,而是反射的光产生 十六进制颜色码 的颜色,比如看报纸和杂志上的颜色. 我们又知道任 ...

  4. XMLHttpRequest 使用概括

    ***********************************************XMLHttpRequest对象初始化:********************************* ...

  5. C++引用之引用的使用

    一旦一个引用被声明,则该引用名就只能作为目标变量名的一个别名来使用,所以,不能再把该引用名作为其他变量名的别名,任何对该引用的赋值就是对该引用对应的目标变量名的赋值. 对引用求地址就是对目标变量求地址 ...

  6. leetcode第三题Longest Substring Without Repeating Characters java

    Longest Substring Without Repeating Characters Given a string, find the length of the longest substr ...

  7. 二维卷积c代码

    二维卷积c代码 二维信号的卷积原理请参考另外一篇文章:http://blog.csdn.net/carson2005/article/details/43702241 这里直接给出参考代码: void ...

  8. Hadoop开发环境搭建

    hadoop是一个分布式系统基础架构,由Apache基金会所开发. 用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力高速运算和存储.   Hadoop实现了一个分布式文件系统 ...

  9. 【CF】7 Beta Round D. Palindrome Degree

    manacher+dp.其实理解manacher就可以解了,大水题,dp就是dp[i]=dp[i>>1]+1如何满足k-palindrome条件. /* 7D */ #include &l ...

  10. Web安全测试之XSS(转)

    XSS 全称(Cross Site Scripting) 跨站脚本攻击, 是Web程序中最常见的漏洞.指攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会在用户的 ...