今天搞了一下午,在电脑上搭建了APM平台
系统:Windows7 Professional EN
Apache2.2.9:http://archive.apache.org/dist/httpd/binaries/win32/apache_2.2.9-win32-x86-openssl-0.9.8h-r2.msi
PHP5.3.1:http://windows.php.net/downloads/releases/php-5.3.1-Win32-VC6-x86.zip
MySQL5.1.42:http://ftp.iij.ad.jp/pub/db/mysql/Downloads/MySQL-5.1/mysql-5.1.42-win32.msi
注意:PHP5.3.1有多种,一种是for VC9的,运行环境是IIS而不是Apache,如果要用Apache,就只能选VC6的。
为了今后移植的方便,我重新定义了目录结构:
<F:/>
|--<www>
| |--<server> # 安装 Web 服务程序
| | |--<apache> # Apache安装目录
| | |--<mysql> # MySql安装目录
| | |--<php> # PHP安装目录
| |
| |--<web> # 网站内容
| | |--<PHP程序>
在 Windows7 下安装 Apache 2.2.9
运行 apache 2.2.4 的安装程序,根据提示一路 Next 即可。注意在 Server Information 的 Network Domain、Server Name 字段填上 localhost,我还重新设定了apache的端口号为8080。
在安装类型的位置选 Custom,然后改变安装路径(我的目录是 F:/www/server/apache)。然后根据提示一路 Next 完成即可。
然后在命令提示行中打入下列命令(需要以管理员身份打开命令提示行):
在 Windows7 下安装 php 5.3.1
将下载的 ZIP 包直接解压,我直接将zip 文件解压到 F:/www/server/php 目录下面。安装 php 不建议使用 win32 安装程序(主要是以后安装扩展麻烦)。
在资源管理器中进入 php 的安装目录,将 php.ini-development 复制一份,重命名为 php.ini。然后打开 php.ini。
找到:
;extension=php_mysql.dll
将前面的 ; 号去掉, 改成:
extension=php_mysql.dll
MySQL 的扩展默认是没有打开的。将其打开。类似上面这样的脚本,是可选择的 php 扩展模块,如果需要加载,直接去掉前面的 ; 号即可。
找到:
extension_dir = "./"
将其改为你的 php 安装目录下 ext 子目录的绝对路径。例如我的:
extension_dir = "F:/www/server/php/ext/"
这步很重要 。否则接下来 php 会找不到 php_mysql.dll 模块,无法装载。
在 Windows 7 的系统设置中, 将 php 的目录, 加到 Path 环境变量中去。
配置 Apache 和 PHP
在你的网站目录中(例如我的是 F:/www/web/),手工建立一个 index.php 的文件,内容:
<?php
echo "hello php!";
?>
在命令提示行中启动 apache 服务
或者点击桌面任务栏右下角的Apache图标,进行操作
打开 http://127.0.0.1:8080/index.php,即可看到测试输出结果。
(我将端口号设成了8080)
Windows7 下安装 MySQL 5.1.42
MySQL 的安装比较简单,它提供了一个 win32 的安装包。下载后根据提示一路安装,在安装类型处选 Custom,指定安装目录为 F:/www/server/mysql。
安装完成后,会问你要不要到官网注册,跳过即可。然后会问你是否 Configure the MySQL Server now,选中并继续。
然后选择Detailed Configuration,对于不同用途的用户可以选择不同的服务器类型,由于我是用来开发的,所以就选择Developer Machine,具体的选择可以参考界面右侧的注释。
下一个配置选项适合于数据库应用。这些选项是Multifunctional Database、Transactional Database和Non-Transactional Database Only.对于Multifunctional Database,InnoDB和MyISAM存储引擎二者之间可以平均地分配资源。Transactional Database也支持InnoDB和MyISAM,但是大多数服务器资源倾向于InnoDB。Non-Transactional Database Only则不支持InnoDB,并且把所有的资源应用于MyISAM。除非你确切地知道自己的数据库使用哪种存储引擎,否则选择Multifunctional Database。
对于下以个设置,可直接点下一步。
下一个配置选项决定了MySQL服务器的并发连接数。我按默认的设置。
下一个是networking选项,设置一下端口,并且要使防火墙添加该端口的例外~
下一个是设置字符集,我按照默认的设置Latin1。
最后设定 root 管理员的密码即可。
现在可以在 win7 下使用 apache + mysql + php 开发 web 程序了。
另外,我目前使用Eclipse for php来写代码,兼用Editplus
注意:在apache的配置文件中,文件目录地址使用linux中的斜杠"/"而不是windows中的"/"