1. 安装环境
下载Apache, PHP, MySQL 的最新版本:
* Apache 2.2.x (exe 安装版)
* PHP 5.x.x (zip package)
* MySQL 5.0.x (zip package)
2. 安装的目录结构规划
为了方便维护,将服务器软件安装在系统盘(C盘)而把自己的文件定位到其他盘,这样对于以后的维护很重要。
3. 在 Windows XP 下安装 Apache 2.2.x
a. 运行 apache 2.2.x 的安装程序,根据提示一路 Next 即可。在 Server Information 的 Network Domain、Server Name 字段随便填上一个域名即可,如apache.com,然后根据提示一路 Next 完成即可。
b. 在安装结束时,会弹出一个 DOS 窗口,然后就消失了,这是系统apache自动启动了。
4. 在 Windows XP 下安装 php 5
a. 将下载的 php 5 ZIP 包直接解压,我直接将 PHP 5.2.4 zip 文件解压到 c:\dev\php 目录下面。安装 php 不建议使用 win32 安装程序(主要是以后安装扩展麻烦)。
b. 在资源管理器中进入 php 的安装目录,将 php.ini-dist 或 php.ini-recommended 复制一份,命名为 php.ini。然后打开 php.ini。
c. 找到:
;extension=php_mysql.dll
将前面的 ; 号去掉, 改成:
extension=php_mysql.dll
d. 找到:
extension_dir = “./”
将其改为你的 php 安装目录下 ext 子目录的绝对路径。例如我的:
extension_dir = “c:/dev/php/ext/”
这步很重要 。否则接下来 php 会找不到 php_mysql.dll 模块,无法装载。
e.在“控制面板”->“系统”->“高级”->“环境变量”,在“系统变量”里面找到path,编辑path的变量值,添加你的php目录c:\dev\php,前面一定要用分号(;)把它和前面的值分开。
5. 配置 Apache 和 PHP
打开 Apache 安装目录下的 conf 子目录中的 httpd.conf 文件。
a. 找到:
DocumentRoot “xxxxxxx”
改成你本机的网站内容的目录。例如我的:
DocumentRoot “c:/dev/web”
默认情况下有两个要修改。
b. 找到 LoadModule,根据你的 php 安装目录,在下面空白处加上这两行:
LoadModule php5_module "c:/dev/php/php5apache2_2.dll"
PHPIniDir "c:/php"
c. 找到:
DirectoryIndex index.html
修改为:
DirectoryIndex index.php index.html
d. 找到:
AddType application/x-gzip .gz .tgz
添加这两行:
AddType application/x-httpd-php .php
AddType application/x-httpd-php .html
e. 在你的网站目录中(例如我的是 c:/dev/web/),手工建立一个 index.php 的文件,内容:
<?php
phpinfo();
?>
f. 在windows service中重启apache服务。
g. 打开 http://localhost/index.php,即可看到测试输出结果。
6. Windows XP 下安装 MySQL 5.x
a.我这是Mysql的zip版本,直接解压就可以使用。比如解压到:C:/dev/db/mysql-5.0.22-win32.
b.将Mysql加到Windows 服务中:
执行mysqld-nt --install MySQL,服务成功添加了,但启动服务时报1067错误。
这种情况一般是my.ini文件配置出错了。
将my-medium.ini另外为my.ini,增加以下配置:
[mysqld]
# set basedir to installation path, e.g., c:/mysql
# 设置为MYSQL的安装目录
basedir=C:/dev/db/mysql-5.0.22-win32
# set datadir to location of data directory,
# e.g., c:/mysql/data or d:/mydata/data
# 设置为MYSQL的数据目录
datadir=C:/dev/db/mysql-5.0.22-win32/data
一切OK, 现在可以在 XP 下使用 apache + mysql + php 开发 web 程序了。