最近配置了一台新机器,将开发环境转移到了 Windows Vista 下,于是在 Vista 下也安装了 apache + mysql + php 的 Web 开发平台。我在 Vista 下安装遇到了一些情况,在网上找了半天,关于 Vista 下安装的文章不多,大多是针对 Windows 2000/XP/2003 写的。所以整理了这篇文章
安装环境
操作系统是 Windows Vista Enterprise 英文版, Apache, PHP, MySQL 的最新版本是截止到 2007.09.21,分别在其官网下载的:
Apache 2.2.4:http://httpd.apache.org/download.cgi
注意:我在 2007.09.21 下载最新的 Apache 时,发现已经有 2.2.6 版本了,但是目前还没有 Win32 二进制安装版本,只提供了 win32 source code,需要由使用者自己在 vc6 下编译。现在提供 win32 安装包的最新版本是 v2.2.4。我下载的版本是位于 /binaries/win32 目录中 apache_2.2.4-win32-x86-no_ssl.msi 文件。
PHP 5.2.4 (Windows Binaries PHP 5.2.4 zip package): http://www.php.net/downloads.php
MySQL 5.0.45 Windonws: http://dev.mysql.com/downloads/
安装的目录结构规划
为了方便维护,以及重装系统时不必进行二次安装,建议不要将其安装在系统盘(默认是 C 盘),例如我是装在 D 盘了。安装路径也最好不要含有空格和中文字符。
我的目录结构规划如下:
<D:\>
|--<web>
| |--<Tool> # 安装 Web 服务程序
| | |--<Apache2.2>
| | |--<MySQL>
| | |--<;PHP>
| |
| |--<htdocs> # 网站内容
| | |--<test1.com>
| | |--<test2.com>
文章 安装说明的举例,以上列目录结构为准。
在 Windows Vista 下安装 Apache 2.2.4
Windows Vista 下的安装,主要是由于 UAC 权限的影响,有可能导致服务无法安装成功。但这并不要紧,可以手工解决
运行 apache 2.2.4 的安装程序,根据提示一路 Next 即可。注意在 Server Information 的 Network Domain、Server Name 字段填上 localhost,在安装类型的位置选 Custom,然后改变安装路径(我的目录是 d:/web/tool/apache2.2)。然后根据提示一路 Next 完成即可。
在安装结束时,会弹出一个 DOS 错误窗口,主要原因是由于权限禁止,无法注册服务。直接关掉错误窗口。其后以管理员身份进行 DOS 命令行 (点菜单: 开始 -> 程序 >附件(Accessories), 在 命令提示符(Command Prompt) 上点右键,然后选择以管理员身份运行(Run as adminstrator))。
进入 DOS 窗口后,执行下列命令
# 进入 apache 的安装目录
c:\windows\system32\> d:
d:\> cd d:\web\tool\apache2.2\bin\
# 安装 apache 服务:
d:\web\tool\apache2.2\bin\> httpd -k install
#启动 apahce 服务
d:\web\tool\apache2.2\bin\> httpd -k start
在 Windows Vista 下安装 php 5.2.4
将下载的 php 5 ZIP 包直接解压,我直接将 PHP 5.2.4 zip 文件解压到 d:\web\tool\php 目录下面。安装 php 不建议使用 win32 安装程序(主要是以后安装扩展麻烦)。
在资源管理器中进入 php 的安装目录,将 php.ini-recommended 复制一份,命名为 php.ini。然后打开 php.ini。
找到:
;extension=php_mysql.dll将前面的 ; 号去掉, 改成:
extension=php_mysql.dllMySQL 的扩展默认是没有打开的。将其打开。类似上面这样的脚本,是可选择的 php 扩展模块,如果需要加载,直接去掉前面的 ; 号即可。
找到:
extension_dir = "./"将其改为你的 php 安装目录下 ext 子目录的绝对路径。例如我的:
extension_dir = "D:/Web/Tool/PHP/ext/"这步很重要 。否则接下来 php 会找不到 php_mysql.dll 模块,无法装载。
在 Windows Vista 的系统设置中, 将 php 的目录, 加到 Path 环境变量中去。具体做法:
右键点击 我的计算机 -> 属性 -> 高级系统属性 -> 环境变量 -> 系统变量 - Path -> 编辑,然后加入即可。用 ; 分隔多个目录。
配置 Apache 和 PHP
打开 Apache 安装目录下的 conf 子目录中的 httpd.conf 文件。
找到:
DocumentRoot "xxxxxxx"改成你本机的网站内容的目录。例如我的:
DocumentRoot "D:/Web/htdocs/test1.com/www"
找到:
<Directory "xxxxxxx">改成你本机的网站内容的目录。例如我的:
<Directory "D:/Web/htdocs/test1.com/www">
找到 LoadModule,根据你的 php 安装目录,在下面空白处加上这两行:
LoadModule php5_module "D:/web/tool/PHP/php5apache2_2.dll"
PHPIniDir "D:/web/tool/PHP"
找到:
DirectoryIndex index.html修改为:
DirectoryIndex index.php index.html
找到:
AddType application/x-gzip .gz .tgz添加这两行:
AddType application/x-httpd-php .php
AddType application/x-httpd-php .html
保存 httpd.conf
在你的网站目录中(例如我的是 D:/Web/htdocs/test1.com/www ),手工建立一个 index.php 的文件,内容:
<?php
phpinfo();
?>在 dos 窗口中启动 apache 服务
#如果之前启动了,先将其 stop
d:\web\tool\apache2.2\bin\> httpd -k stop
#启动 apahce 服务
d:\web\tool\apache2.2\bin\> httpd -k start
打开 http://localhost/index.php,即可看到测试输出结果。
Windows Vista 下安装 MySQL 5.0.45
MySQL 的安装比较简单,它提供了一个 win32 的安装包。下载后根据提示一路安装,在安装类型处选 Custom,指定安装目录为 d:/web/tool/mysql。
安装完成后,会问你要不要到官网注册,跳过即可。然后会问你是否 Configure the MySQL Server now,选中并继续,然后根据提示,设定 字符集,以及 root 管理员的密码即可。
OK, 现在你可以在 vista 下使用 apache + mysql + php 开发 web 程序了。
先准备好软件:
Apache官方下载地址:
apache_2.0.55-win32-x86-no_ssl.msi,
更多版本在这里;
php官方下载地址:
php-5.0.5-Win32.zip,
更多镜像下载地址,
更多版本下载;
mysql官方下载地址:
mysql-4.1.14-win32.zip,
更多镜像下载地址,
更多版本下载。
一、安装Apache,配置成功一个普通网站服务器
运行下载好的“
apache_2.0.55-win32-x86-no_ssl.msi”,出现如下界面:

出现Apache HTTP Server 2.0.55的安装向导界面,点“Next”继续

确认同意软件安装使用许可条例,选择“I accept the terms in the license agreement”,点“Next”继续

将Apache安装到Windows上的使用须知,请阅读完毕后,按“Next”继续

设置系统信息,在Network Domain下填入您的域名(比如:goodwaiter.com),在Server Name下填入您的服务器名称(比如:www.goodwaiter.com,也就是主机名加上域名),在Administrator's Email Address下填入系统管理员的联系电子邮件地址(比如:yinpeng@xinhuanet.com),上述三条信息仅供参考,其中联系电子邮件地址会在当系统故障时提供给访问者,三条信息均可任意填写,无效的也行。下面有两个选择,图片上选择的是为系统所有用户安装,使用默认的80端口,并作为系统服务自动启动;另外一个是仅为当前用户安装,使用端口8080,手动启动。一般选择如图所示。按“Next”继续。]

选择安装类型,Typical为默认安装,Custom为用户自定义安装,我们这里选择Custom,有更多可选项。按“Next”继续

出现选择安装选项界面,如图所示,左键点选“Apache HTTP Server 2.0.55”,选择“This feature, and all subfeatures, will be installed on local hard drive.”,即“此部分,及下属子部分内容,全部安装在本地硬盘上”。点选“Change...”,手动指定安装目录。

我这里选择安装在“D:\”,各位自行选取了,一般建议不要安装在操作系统所在盘,免得操作系统坏了之后,还原操作把Apache配置文件也清除了。选“OK”继续。

返回刚才的界面,选“Next”继续。

确认安装选项无误,如果您认为要再检查一遍,可以点“Back”一步步返回检查。点“Install”开始按前面设定的安装选项安装。

正在安装界面,请耐心等待,直到出现下面的画面。

安装向导成功完成,这时右下角状态栏应该出现了下面的这个绿色图标,表示Apache服务已经开始运行,按“Finish”结束Apache的软件安装

我们来熟悉一下这个图标,很方便的,在图标上左键单击,出现如下界面,有“Start(启动)”、“Stop(停止)”、“Restart(重启动)”三个选项,可以很方便的对安装的Apache服务器进行上述操作。

好了现在我们来测试一下按默认配置运行的网站界面,在IE地址栏打“http://127.0.0.1”,点“转到”,就可以看到如下页面,表示Apache服务器已安装成功。

现在开始配置Apache服务器,使它更好的替我们服务,事实上,如果不配置,你的安装目录下的Apache2\htdocs文件夹就是网站的默认根目录,在里面放入文件就可以了。这里我们还是要配置一下,有什么问题或修改,配置始终是要会的,如图所示,“开始”、“所有程序”、“Apache HTTP Server 2.0.55”、“Configure Apache Server”、“Edit the Apache httpd conf Configuration file”,点击打开。

XP的记事本有了些小变化,很实用的一个功能就是可以看到文件内容的行、列位置,按下图所示,点“查看”,勾选“状态栏”,界面右下角就多了个标记,“Ln 78, Col 10”就表示“行 78,列 10”,这样可以迅速的在文件中定位,方便解说。当然,你也可以通过“编辑”,“查找”输入关键字来快速定位。每次配置文件的改变,保存后,必须在 Apache服务器重启动后生效,可以用前面讲的小图标方便的控制服务器随时“重启动”。

现在正式开始配置Apache服务器,“Ln 228”,或者查找关键字“DocumentRoot”(也就是网站根目录),找到如下图所示地方,然后将""内的地址改成你的网站根目录,地址格式请照图上的写,主要是一般文件地址的“\”在Apache里要改成“/”。

“Ln 253”,同样,你也可以通过查找“<DIRECTORY”来定位,以后不再说明,将""内的地址改成跟DOCUMENTROOT的一样。

“Ln321”,DirectoryIndex(目录索引,也就是在仅指定目录的情况下,默认显示的文件名),可以添加很多,系统会根据从左至右的顺序来优先显示,以单个半角空格隔开,比如有些网站的首页是index.htm,就在光标那里加上“index.htm ”文件名是任意的,不一定非得“index.html”,比如“test.php”等,都可以。

这里有一个选择配置选项,以前可能要配置,现在好像修正过来了,不用配置了,就是强制所有输出文件的语言编码,html文件里有语言标记(,这个就是设定文档语言为gb2312)的也会强制转换。如果打开的网页出现乱码,请先检查网页内有没有上述 html语言标记,如果没有,添加上去就能正常显示了。把“# DefaultLanguage nl”前面的“# ”去掉,把“nl”改成你要强制输出的语言,中文是“zh-cn”,保存,关闭。

好了,简单的Apache配置就到此结束了,现在利用先前的小图标重启动,所有的配置就生效了,你的网站就成了一个网站服务器,如果你加载了防火墙,请打开80或8080端口,或者允许Apache程序访问网络,否则别人不能访问。如果你有公网IP(一般ADSL或电话拨号上网的都是),就可以邀请所有能上网的朋友访问使用http://你的IP地址(IP地址查询可访问http://www.goodwaiter.com,查询内容内即是)你的网站了;如果你没有公网IP,也可以把内网IP地址告诉局域网内的其它用户,让他们通过http://你的内网IP地址,访问你的网站。
二、php的安装、以module方式,将php与apache结合使你的网站服务器支持php服务器脚本程序
将下载的php安装文件
php-5.0.5-Win32.zip右键解压缩。
指定解压缩的位置,我的设定在“D:\php”
查看解压缩后的文件夹内容,找到“php.ini-dist”文件,将其重命名为“php.ini”,打开编辑,找到下面图中的地方, Ln385,有一个“register_globals = Off”值,这个值是用来打开全局变量的,比如表单送过来的值,如果这个值设为“Off”,就只能用“$_POST['变量名']、$_GET['变量名 ']”等来取得送过来的值,如果设为“On”,就可以直接使用“$变量名”来获取送过来的值,当然,设为“Off”就比较安全,不会让人轻易将网页间传送的数据截取。这个值是否改成“On”就看自己感觉了,是安全重要还是方便重要?
这里还有一个地方要编辑,功能就是使php能够直接调用其它模块,比如访问mysql,如下图所示,Ln563,选择要加载的模块,去掉前面的 “;”,就表示要加载此模块了,加载的越多,占用的资源也就多一点,不过也多不到哪去,比如我要用mysql,就要把“;extension= php_mysql.dll”前的“;”去掉。所有的模块文件都放在php解压缩目录的“ext”之下,我这里的截图是把所有能加载的模块都加载上去了,前面的“;”没去掉的,是因为“ext”目录下默认没有此模块,加载会提示找不到文件而出错。这里只是参考,一般不需要加载这么多,需要的加载上就可以了,编辑好后保存,关闭。
如果上一步加载了其它模块,就要指明模块的位置,否则重启Apache的时候会提示“找不到指定模块”的错误,这里介绍一种最简单的方法,直接将php安装路径、里面的ext路径指定到windows系统路径中——在“我的电脑”上右键,“属性”,选择“高级”标签,点选“环境变量”,在“系统变量”下找到“Path”变量,选择,双击或点击“编辑”,将“;D:\php;D:\php\ext”加到原有值的后面,当然,其中的“D:\php” 是我的安装目录,你要将它改为自己的php安装目录,如下图所示,全部确定。系统路径添加好后要重启电脑才能生效,可以现在重启,也可以在所有软件安装或配置好后重启。
现在开始将php以module方式与Apache相结合,使php融入Apache,照先前的方法打开Apache的配置文件,Ln 173,找到这里,添加进如图所示选中的两行,第一行“LoadModule php5_module D:/php/php5apache2.dll”是指以module方式加载php,第二行“PHPIniDir "D:/php"”是指明php的配置文件php.ini的位置,是当然,其中的“D:/php”要改成你先前选择的php解压缩的目录。
还是Apache的配置文件,Ln 757,加入“AddType application/x-httpd-php .php”、“AddType application/x-httpd-php .html”两行,你也可以加入更多,实质就是添加可以执行php的文件类型,比如你再加上一行“AddType application/x-httpd-php .htm”,则.htm文件也可以执行php程序了,你甚至还可以添加上一行“AddType application/x-httpd-php .txt”,让普通的文本文件格式也能运行php程序。
前面所说的目录默认索引文件也可以改一下,因为现在加了php,有些文件就直接存为.php了,我们也可以把“index.php”设为默认索引文件,优先顺序就自己排了,我的是放在第一位。编辑完成,保存,关闭。
现在,php的安装,与Apache的结合已经全部完成,用屏幕右下角的小图标重启Apache,你的Apache服务器就支持了php。
三、mysql的安装,与php、Apache相结合
打开下载的mysql安装文件
mysql-4.1.14-win32.zip,双击解压缩,运行“setup.exe”,出现如下界面

mysql安装向导启动,按“Next”继续

选择安装类型,有“Typical(默认)”、“Complete(完全)”、“Custom(用户自定义)”三个选项,我们选择“Custom”,有更多的选项,也方便熟悉安装过程

在“Developer Components(开发者部分)”上左键单击,选择“This feature, and all subfeatures, will be installed on local hard drive.”,即“此部分,及下属子部分内容,全部安装在本地硬盘上”。在上面的“MySQL Server(mysql服务器)”、“Client Programs(mysql客户端程序)”、“Documentation(文档)”也如此操作,以保证安装所有文件。点选“Change...”,手动指定安装目录。

填上安装目录,我的是“D:\mysql”,也建议不要放在与操作系统同一分区,这样可以防止系统备份还原的时候,数据被清空。按“OK”继续。

返回刚才的界面,按“Next”继续。

确认一下先前的设置,如果有误,按“Back”返回重做。按“Install”开始安装。

正在安装中,请稍候,直到出现下面的界面

这里是询问你是否要注册一个mysql.com的账号,或是使用已有的账号登陆mysql.com,一般不需要了,点选“Skip Sign-Up”,按“Next”略过此步骤。

现在软件安装完成了,出现上面的界面,这里有一个很好的功能,mysql配置向导,不用向以前一样,自己手动乱七八糟的配置my.ini了,将 “Configure the Mysql Server now”前面的勾打上,点“Finish”结束软件的安装并启动mysql配置向导。

mysql配置向导启动界面,按“Next”继续。

选择配置方式,“Detailed Configuration(手动精确配置)”、“Standard Configuration(标准配置)”,我们选择“Detailed Configuration”,方便熟悉配置过程。

选择服务器类型,“Developer Machine(开发测试类,mysql占用很少资源)”、“Server Machine(服务器类型,mysql占用较多资源)”、“Dedicated MySQL Server Machine(专门的数据库服务器,mysql占用所有可用资源)”,大家根据自己的类型选择了,一般选“Server Machine”,不会太少,也不会占满。

选择mysql数据库的大致用途,“Multifunctional Database(通用多功能型,好)”、“Transactional Database Only(服务器类型,专注于事务处理,一般)”、“Non-Transactional Database Only(非事务处理型,较简单,主要做一些监控、记数用,对MyISAM数据类型的支持仅限于non-transactional),随自己的用途而选择了,我这里选择“Transactional Database Only”,按“Next”继续。

对InnoDB Tablespace进行配置,就是为InnoDB 数据库文件选择一个存储空间,如果修改了,要记住位置,重装的时候要选择一样的地方,否则可能会造成数据库损坏,当然,对数据库做个备份就没问题了,这里不详述。我这里没有修改,使用用默认位置,直接按“Next”继续

选择您的网站的一般mysql访问量,同时连接的数目,“Decision Support(DSS)/OLAP(20个左右)”、“Online Transaction Processing(OLTP)(500个左右)”、“Manual Setting(手动设置,自己输一个数)”,我这里选“Online Transaction Processing(OLTP)”,自己的服务器,应该够用了,按“Next”继续

是否启用TCP/IP连接,设定端口,如果不启用,就只能在自己的机器上访问mysql数据库了,我这里启用,把前面的勾打上,Port Number:3306,按“Next”继续

这个比较重要,就是对mysql默认数据库语言编码进行设置,第一个是西文编码,第二个是多字节的通用utf8编码,都不是我们通用的编码,这里选择第三个,然后在Character Set那里选择或填入“gbk”,当然也可以用“gb2312”,区别就是gbk的字库容量大,包括了gb2312的所有汉字,并且加上了繁体字、和其它乱七八糟的字——使用mysql的时候,在执行数据操作命令之前运行一次“SET NAMES GBK;”(运行一次就行了,GBK可以替换为其它值,视这里的设置而定),就可以正常的使用汉字(或其它文字)了,否则不能正常显示汉字。按 “Next”继续。
[
本帖最后由 Liming 于 2008-5-26 09:57 编辑 ]