2006年6月

最纯净的 Apache 2 && PHP 5 && Mysql 5 for WinXP 配置法

写在前面:

如果你有处女情结……
那么请选用我的伺服器配置方式吧……
(笑……)
笑归笑……
转载请注明作者 & 文章来源……

我的安装配置方式当然不是最好的……
(虽然我自己认为是最完美的……)
但由于我个人有”绿色情结“……
实在不想多往系统盘丢文件……
所以选择了这样一种尽量绿色的安装方法……
而且软体的选择了能稳定运行的尽量较新的版本……
(为了保证开发的适应性,
采纳了 vBulletin 官方的推荐方案……)
希望对大家有用……
(其实你是最近重装系统才顺便写了这篇文章吧?)

目录:

前期准备:

[有关作业系统]

Windows XP SP2 (其实系统只要是 98 以上都可以遵循这样的方法我认为)

[有关 Apache 版本]

Apache 2推荐……
本例中我选用了 2.2.2 for Win32 ……

[有关 PHP 版本]

PHP 5推荐……
虽然版本号有点不吉利……
但本文中我还是毅然选择了 5.1.4 for Win32 Zip 版……

[有关 MySQL 版本]

MySQL 5推荐……
5.1 尚不稳定……
我们姑且还是选择 MySQL 5.0.22 for Win32 Zip 版……

[有关其它]

本方案并不涉及系统文件夹……
所以我们大可选择其它分区的某个文件夹来方便日后的伺服器维护……
本文以
X:\Server
为例……
文件夹名称最好不要包含空格或其它非英文字符……

另外……
本文中的步骤只是鄙人习惯的安装顺序……
实际上亦可颠倒反复……
不在话下……

目录:

安装 Apache:

[步骤一]

运行 apache_2.2.2-win32-x86-no_ssl.msi ……
一路 Next 下来……
到选择安装方式的时候选择 “Custom” 自定义方式……
然后 Next 选择安装路径……
定位到
X:\Server\Apache
当然啦……
你也可以选择其它路径……
甚至选择 “Complete” 安装都没问题……
我只是习惯将所有服伺服器相关软体集中到一起而已……

[步骤一点五]

本来不准备写 IIS 与 Apache 的共存配置……
想一想还是带一笔吧……
提示填写 Server Information 时……
最下方会让你选择端口……
如果你安装了 IIS 伺服器……
这里就选择第二项 “only for the current user, on Port 8080, when started manually.”……
也就是说 Apache 将占用 8080 端口……
如果你没安装 IIS ……
无视之……
注意:如果端口为 8080 或其它……
记得访问时带上端口号……
此后不再体型

[步骤二]

继续 Next ……
弹出几个 CMD 窗口安装 Windows 服务以后……
安装就完成了……
右下角将出现 Apache 粉红色的羽毛 Icon……
不出意外图标上应该显示绿灯(表示 HTTP 伺服已经正常启动)……
你可以访问 http://127.0.0.1 来试试……
如果屏幕出现 “It Works” 就表示安装成功……
(我记得以前的版本不是这样的……
而是一个挺花哨的页面……
所以只要不出现找不到页面的提示……
Apache 伺服就安装成功了)
当然了……
如果亮起红灯……
配置肯定出现了错误……
回头查查吧……

[步骤三]

至此……
Apache 伺服器就安装完毕了……

目录:

安装 PHP :

[步骤一]

解压 PHP-5.1.4-Win32.zip ……
并放置到
X:\Server\PHP
之下……

[步骤二]

接下来为 PHP 的安装目录添加环境变量……
在我的电脑图标上点击滑鼠右键……
查看‘属性’……
然后切换到‘高级’选项卡……
点击‘环境变量’按钮(快捷键:Alt+N)……
在弹出的‘系统变量’域中找到 ‘Path’ 变量……
双击编辑并在变量值的最后添加
;X:\Server\PHP
(注意有个分号……
用来分隔之前的值)

[步骤三]

重启电脑……
为虾米?
答曰让环境变量生效……

[步骤四]

至此 PHP 就安装完毕了……
当然……
现在还未与 Apache 关联……
而且未作任何设置……
不要急……
后面我会写到……

目录:

配置 Apache:

[步骤一]

尤为重要的一步……
如果你跟我一样选择了当前最新的 PHP 稳定版本 5.1.4……
官方下载来的源码包中的模块化支援 PHP5apache2.dll 是不适用于 Apache 2.2.2 的……
据查需要重新编译 PHP ……
不过PHP5 研究室提供了解决方法:
下载这个压缩包……
解压后将 PHP5apache2.dll 扔进
X:\Server\PHP
覆盖原文件……
将 httpd.exe.manifest 扔进
X:\Server\Apache\Bin
文件夹……
最后运行 vcredist_x86.exe (如果你安装有 .Net FrameWork 就无需安装此文件)……
当然……
如果你选择比较旧的版本则可略过此步……

[步骤二]

下面开始修改 Apache 配置文件……
打开
X:/Server/Apache/conf/httpd.conf

先修改文档发布路径……
搜索:
DocumentRoot "X:/Server/Apache/htdocs"
将值修改成你想要的发布路径……
比如:
DocumentRoot "X:/Server/WWW"
然后还有一处也需要修改……
否则将无权访问……
搜索:
Directory "X:/Server/Apache/htdocs"
修改为:
Directory "X:/Server/WWW"

再来修改默认脚本……
搜索:
DirectoryIndex index.html
添加你想要的默认脚本名称……
用空格分隔……
注意前后有优先顺序……
比如修改为:
DirectoryIndex index.PHP index.html index.htm

针对 PHP 5 的配置……
在文档的最下方加入以下字符:
# 调用 PHP 5 模块
LoadModule PHP5_module "X:/Server/PHP/PHP5apache2.dll"
# 添加 Mime 类型…… 亦可以修改 mime.types 文件
AddType application/x-httpd-PHP .PHP
AddType application/x-httpd-PHP-source .phps
# 添加默认字符集…… utf8才是王道……
AddDefaultCharset UTF8
# 设置 PHP.ini 目录
PHPIniDir "X:/Server/PHP"

[步骤三]

至此 Apache 已经可以支持 PHP 了……
本文仅介绍如何进行基本安装……
将不涉及详细的配置以及优化……
各位可以自行参阅手册进行配置……

目录:

安装 MySQL:

[步骤一]

解压 MySQL-noinstall-5.0.22-win32.zip ……
并放置到
X:\Server\MySQL
之下……

[步骤二]

接下来安装 MySQL 服务……
打开 cmd.exe ……
然后进入
X:\Server\MySQL\bin
目录……

虾米!
你不会?
那我还是写清楚吧:
开始->运行->cmd->回车……
键入:
cd /D X:\Server\MySQL\bin
回车
如果你的文件夹带有空格……
别忘了在路径外添加双引号……
然后运行 MySQL 服务安装脚本:
mysqld-nt -install
显示 “MySQL service installed successfully" 则表示安装成功……

[步骤三]

接下来为 MySQL 的安装目录也添加一个环境变量……
在我的电脑图标上点击滑鼠右键……
查看‘属性’……
然后切换到‘高级’选项卡……
点击‘环境变量’按钮(快捷键:Alt+N)……
在弹出的‘系统变量’域中找到 ‘Path’ 变量……
双击编辑并在变量值的最后添加
;X:\Server\MySQL
(注意有个分号……
用来分隔之前的值)

[步骤四]

重启电脑……
为虾米?
答曰让环境变量生效……
(我靠……
安装 PHP 的时候为什么不一起说……
害我还得重启一遍……)
这个嘛……
嘿嘿……
我忘了……

[步骤五]

然后配置 MySQL ……
来到
X:\Server\MySQL
里头应该有若干个 ini 文件……
我们根据自己的需要任取一个……
(大同小异……
仅是默认配置不同……
你也可以自行修改的)
由于我仅仅为了本地的开发调试……
所以选择了
my-small.ini
将其复制一份……
命名为:
my.ini
并用文本编辑器打开它:
搜索:
[mysqld]
在下方加入以下字符行:
#MySQL 安装目录
basedir=X:/Server/MySQL
#MySQL 默认数据目录
datadir=X:/Server/MySQL/data
# 默认字符集…… 设置为 UTF8 吧
default-character-set=utf8
# 默认储存引擎…… 还是回到 MyISAM 时代吧…… InnoDB 被甲骨文买了……
default-storage-engine=MyISAM

再在文档最下方加入:
[WinMySQLAdmin]
Server=X:/Server/MySQL/bin/mysqld-nt.exe

[步骤六]

重启电脑……
为虾米?
答曰让环境变量生效……
(我靠……
安装 PHP 的时候为什么不一起说……
害我还得重启一遍……)
这个嘛……
嘿嘿……
我忘了……

[步骤七]

MySQL 配置完成……
下面可以启动试试……
打开 cmd.exe……
输入:
net start MySQL
若显示‘MySQL服务已经启动成功’……
则表示……
则表示这句话说得没错…… (-__-!)
否则请回头检查……

[步骤八]

服务器启动了……
我们就可以登录试试了……
打开 cmd.exe……
输入:
cd /D X:\Server\MySQL\bin
回车
接着登陆:
MySQL -u root -p
由于 root 用户初始状态无密码……
提示 Enter Password 时直接回车即可……
然后命令行进入 MySQL Shell 状态即表示‘入侵’成功……

[步骤九]

如果你不希望别人也用空密码入侵你……
那么最好给 root 设置一个牛叉点儿的密码……
在 MySQL Shell 状态下输入:
set password for 'root'@'localhost' = old_password('Password_for_root');
(这是 MySQL 5 的新命令……
之前的版本请将 old_password 改成 password
将其中 Passwor_for_root 更换为你自个儿的密码吧……
别太简单……
提示 ‘Query Ok’ 表明修改成功……
不信的话可以 exit; 出去再登录试试……

[步骤十]

至此……
MySQL 的安装工作完毕……
详细的优化配置请参阅手册……
至于 MySQL 与 PHP 的关联下面将提到……

目录:

配置 PHP:

[步骤一]

进入
X:\Server\PHP
PHP.ini-recommend 更名为
PHP.ini
并用文本编辑器打开……

[步骤二]

修改错误报告级别……
你会发现满屏的警告……
搜索:
error_reporting = E_ALL
修改为:
error_reporting = error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT

[步骤三]

由于是本地调试……
我当然希望错误被输出供我调试……
搜索:
display_errors = Off
修改为:
display_errors = On

[步骤四]

不过在本地记录错误似乎没有必要……
搜索:
log_errors = On
修改为:
log_errors = Off

[步骤五]

设置扩展库的路径是很必要的……
搜索:
extension_dir = "./"
修改为:
extension_dir = "X:/Server/PHP/ext"

[步骤六]

PHP 5 默认是不开启对 MySQL 的支持的……
搜索:
;extension=PHP_MySQL.dll
去掉前面的分号……
则修改为:
extension=PHP_MySQL.dll

[步骤七]

下面针对 vBulletin 来实施一些配置修改……
由于它早已实现了对 Mysqli 的支援……
所以这里我们引入 MySQL 扩展库……
搜索:
extension=PHP_MySQL.dll
在下方加入:
extension=PHP_mysqli.dll

为了更好的使用它的一些图形相关功能……
我们需要加载 GD2 库……
搜索:
;extension=PHP_gd2.dll
去掉前面的分号……
则修改为:
extension=PHP_gd2.dll

我们还希望对一些较常用的库进行加载……
比如 PHP_mbstring.dll 、 PHP_curl.dll 、 PHP_sockets.dll 、 PHP_xmlrpc.dll 等……
不在话下……
方法同上……
(这里仅列举了常用扩展……
其它的扩展请自行根据需要定夺……)

尽管 vBulletin 使用的是其内建的 Session 机制……
但 PHP 的 Session 机制在很多程序中仍旧是必备的……
搜索:
;session.save_path = "/tmp"
修改为一个存在的路径里……
或者到发布目录下建立一个 tmp 目录……
这里我们选用前一种方法……
先建立这样一个目录:
X:\Session
然后修改配置行为:
session.save_path = "X:/Session"

[步骤八]

到这里基本就设置完毕了……
PHP 也能正常支持 MySQL 了……
更详细的设置大家还是去翻手册了……

目录:

结语:

最基本的 WAMP 环境就配置完毕了……
接下来我还配置了 Zend Optimizer 和 Subversion……
由于不是标配……
这里就不做介绍了……

其实 Apache 服务器也可以不用安装……
可惜我未找到 2.2.2 的 ZIP 版本……
所以只能自行解包了 Apache 的安装程序……
提取了文件进行所谓的”绿色“安装……
偏执狂……

呃………………
想到甚么再补充进来吧……
拜拜……

目录: