Windows 服务器部署标准
Discuz! X 是一款以 PHP 为编程语言,以 MySQL 为数据库,并使用 Apache/IIS/Nginx(任意一种即可) 提供 web 服务的产品。要搭建 Discuz! X 站点,服务器必须安装由 PHP、MySQL、Apache/IIS/Nginx 构成的环境。其中,IIS 主要用于 Windows 服务器,Apache、Nginx 多用于 Linux 服务器(即 LAMP 和 LNMP)。
Windows 服务器部署时,需要按照一定的部署顺序,即:
系统环境检查 -> MySQL、PHP 程序包下载 -> MySQL、PHP 安装
下面以在 Windows 服务器上部署 IIS、MySQL、PHP 为例,演示搭建环境的具体过程。
系统约定
环境软件下载后存放位置 | X:\Server_Tools |
环境软件安装位置 | X:\Server_Core |
PHP安装位置 | X:\Server_Core\PHP |
MySQL安装位置 | X:\Server_Core\MySQL |
Zend Optimizer安装位置 | X:\Server_Core\Zend |
IIS网站站点根目录 | X:\wwwroot |
MySQL 数据库位置 | X:\Database |
php.ini存放位置 | Y:\Windows\php.ini |
my.ini 存放位置 | X:\Server_Core\MySQL\my.ini |
注:X 和 Y 为本标准中的变量,X 仅表示应用程序实际存放、安装的分区盘符,Y 为系统所在分区盘符。
系统环境检查以及准备所需软件
1、检查系统是否已安装IIS
单击:“开始” -> “管理工具”。

检查是否存在“Internet 信息服务 (IIS) 管理器”,由于操作系统盘中会自带 IIS 组件,所以建议安装操作系统时也把 IIS 组件安装上。如果未安装,可以到网络上下载对应操作系统版本的 IIS。
2、查看磁盘分区容量,确定使用策略
打开“我的电脑”,查看除 C 区外各个磁盘分区的可用空间容量。使用容量较大的磁盘分区作为 web 根目录,且 MySQL 数据库存储目录 (Database),尽量不要与 web 根目录同在一个磁盘分区内。较小的磁盘分区可以作为服务环境软件的安装目录分区。
注:如有特殊要求则按要求进行部署。
3、下载环境软件
将所有软件均下载存放于 Server_Tools 文件夹中,下载地址:
mysql-5.5.19-win32.msi | /dev.mysql.com/downloads/ |
php-5.2.17-Win32.zip | /php.net/downloads.php |
ZendOptimizer-3.3.3-Windows-i386.exe | /www.zend.com/en/products/guard/zend-optimizer |
PHPMyAdmin-3.1.0-all-languages.zip | /www.phpmyadmin.net/home_page/downloads.php |
注意事项:PHP 版本选择5.2.x,小版本号越新越好,暂时不要用 PHP5.3 版本,没有特殊原因,不要用 PHP4 了,PHP 官方不再提供 PHP4 支持,MySQL 版本选择 5.5.x,小版本号越新越好,没有特殊原因不用其他版本。PHP 尽量使用非安装的绿色版本,MySQL 尽量用安装版本。
环境部署
安装 MySQL
1、安装软件
进入 X:\Server_Tools 目录,双击 mysql-5.5.19-win32.msi;

选择 Custom 自定义安装

点击 “Change” 更改 MySQL 安装目录

待文件复制安装完毕后,进行 MySQL 设置界面,单击 Finish。

选择 Detailed Configuration 进行详细配置

选择 MySQL 运行模式:Server Machine

选择 MySQL 数据库默认存储方式:Non-Trans Only (MYISAM)

设定 MySQL 最大连接数:一般设置为 128 - 512 之间的整数。

设定 MySQL 网络参数,注意:不要勾选启用 Strict Mode!那个 Addfirewall 的选项仅在需要外连 MySQL 的时候勾选上,也就是说给防火墙加个出入站的策略。

设定 MySQL 默认字符集:以用户站点语言为准,默认我们填 gbk。

Windows 环境设定

修改设定 root 用户密码,root 密码请设置的比较复杂些。

注意:非必要情况下,不要启动远程连接模式! 完成 MySQL 的安装,并启动 MySQL 服务。

2、测试 MySQL 工作是否正常
打开 cmd 命令提示符窗口,输入命令:mysql –u root –p

输入刚才安装时设置的密码后,如果能够正常进入 MySQL 控制台,则说明 MySQL 安装正常。
3、更改 MySQL 数据库存放目录
打开 cmd 命令提示符窗口,输入命令:net stop mysql 停止 MySQL 服务运行;

打开 X:\Server_Core\MySQL\my.ini,找到:
Datadir = “X:\Server_Core\MySQL\data”
修改为:
Datadir = “X:\Database”
将 X:\Server_Core\MySQL\data 文件夹复制到 X:\,并重命名 X:\Database;
打开 cmd 命令提示符窗口,输入命令:
net start mysql
启动 MySQL 服务。
重新测试 MySQL 是否工作正常。
4、移动 LibMySQL 动态链接库到系统目录
将 X:\Server_Core\MySQL\bin\libmySQL.dll 文件复制到 Y:\Windows\System32 目录下。
安装 PHP
1、解压缩
解压缩下载的 php-5.2.8-Win32.zip 文件,并将其复制到:
X:\Server_Core\PHP ;
2、修改 php.ini
进入 X:\Server_Core\PHP 文件夹,将 php.ini-dist 重命名为 php.ini ;
打开 php.ini文件,找到:
extension_dir= "./"
将其改为:
extension_dir= "X:\Server_Core\PHP\ext"
找到:Windows Extensions
在Windows Extensions下方的动态模块配置中,需要打开以下模块支持:(去掉模块配置每行前面的分号即可)
php_gd2.dll
php_mbstring.dll
php_mcrypt.dll
php_mhash.dll
php_ming.dll
php_mysql.dll
php_openssl.dll
php_sockets.dll
php_xmlrpc.dll
php_zip.dll
找到:
disable_functions=
改为:
disable_functions=passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server
保存 php.ini 文件,并将其复制到 Y:\Windows
IIS 与 PHP 的整合配置
1、建立网站
启动 IIS 管理器,并新建一个网站(虚拟主机);


输入网站名称,改名称仅为 IIS 中的标识

网站 IP 地址不用填写,端口如没有特殊要求则保持 80 即可,最后正确输入网站域名。

在网站分区中建立 wwwroot 以及下级站点文件夹 bbs

对于 PHP 应用,需要给予该站点“读取”和“运行脚本”的权限。

至此,已经成功的新建了一个站点。

2、IIS 与 PHP 的整合配置
打开刚刚建立的网站属性

在站点属性窗口中,单击“主目录”页签,单击“配置”按钮,在新弹出的“应用程序配置”对话框中,单击“添加”按钮,加入 PHP 的 ISAPI 支持,选择可执行文件:X:\Server_Core\PHP\php5isapi.dll、扩展名为 .php、限制动作为:GET,POST。单击“确定”添加,并在“应用程序配置”窗口中查看 .php 扩展是否加载成功。若成功,则单击“确定”关闭配置窗口,回到站点属性主窗口。

单击“文档”页签,在默认内容文档中添加 index.htm、index.html、index.php 三个文件,并将所有默认文档排序,顺序按照下图所示。完成后,单击“确定”,关闭站点属性配置窗口,回到 IIS 管理器主界面。

右键单击 “Web 服务扩展”,添加 PHP 扩展支持。

在如下图所示的“新建 WEB 服务扩展”对话框中,“扩展名”填写 PHP,“文件”选择 X:\Server_Core\PHP\php5isapi.dll,并设置该 PHP 扩展默认为允许。

重启 IIS 服务


至此,IIS 与 PHP 的整合已经完毕。
3、测试 PHP 是否安装正确
进入 X:\wwwroot\bbs\ 目录,新建一个 phpinfo.php 文件,内容为:
<php
phpinfo();
?>
打开 IE 浏览器,输入:/www.domain.com/phpinfo.php;
注:www.domain.com 为你的服务器域名,本机可以填写 localhost
如果能够正常显示 PHP 支持信息,则表明配置整合成功。
安装 Zend Optimizer
进入 X:\Server_Tools 文件夹,双击下载的 ZendOptimizer-3.3.3-Windows-i386.exe 文件,安装过程非常友好,也比较简单,因而此处不再进行截图说明。但需注意以下几点:
Zend Optimzer 的安装目录要指定为 X:\Server_Core\Zend;
在安装过程中提示 php.ini 的位置是,注意观察是否为 Y:\Windows,如果不是必须手动指定为 Y:\Windows;
安装过程中提示 IIS 网站根目录的位置,指定为:X:\wwwroot;
Zend Optimizer 安装完成后会自动重启 IIS 服务,重启完成后需要再次打开 IE 浏览器窗口,查看 phpinfo.php 支持信息,观察是否包含了 Zend Optimizer 支持信息,如果没有,则说明 Zend Optimizer 没有安装成功!