基于PHP语言的论坛可以说是目前最安全而且执行代码效率最高的论坛了,和ASP相比他可以实现和MYSQL更好结合的特点,结合PHPMYADMIN可以更好的管理和维护数据库信息。一般情况下使用apache和PHP搭配比较顺手,不过很多时候由于特定因素和条件的局限,我们要求在IIS基础上建立PHP应用环境。今天笔者就为各位介绍如何在IIS和Windows下建立PHP应用环境。
一、环境需求和准备工作:

    为了方便各位IT168的读者使用PHP,笔者选择了PHP5.2版本,而IIS则是XP系统自带的IIS 5。首先我们要安装IIS组件,默认情况下在XP系统是没有安装的。
    第一步:通过控制面板的添加/删除Windows组件完成IIS组件的安装工作。
    第二步:在添加/删除Windows组件选项窗口中我们双击Internet信息服务(IIS),然后把里面的包括internet信息服务管理单元,公用文件,万维网服务选中。(如图1)
图1

    第三步:插入XP SP2系统光盘复制必须文件到本地硬盘,安装完毕后我们可以从“管理工具”中的“internet信息服务”启动IIS程序。(如图2)
图2
二、安装PHP程序及设置:

    安装好IIS后我们就可以发布相应的网站了,但是这时还无法浏览PHP语言建立的页面,我们需要先安装PHP并设置必须的参数。
    第一步:下载PHP主程序,笔者使用的是PHP 5.2,解压缩到本地磁盘c盘根目录。(如图3)
图3

    第二步:接下来将PHP文件夹中的php.ini-dist复制到C:\WINDOWS目录下并改名为php.ini,复制php5ts.dll和libmysql.dll两个文件到 C:\WINDOWS\system32中。(如图4)
图4
第三步:为了让PHP支持MYSQL和GD库需要编辑php.ini文件,用记事本打开该文件,查找“extension_dir”,然后把extension_dir = "./"修改为extension_dir = "C:\php\ext";另外还需要把“;extension=php_mysql.dll”前的分号去掉,改成extension=php_mysql.dll。把“;extension=php_gd2.dll”前的分号也去掉,修改为extension=php_gd2.dll。
    至此我们的PHP就安装完成了,但是由于默认情况下IIS是不支持PHP的,只能支持ASP。所以还需要我们像建立CGI那样创建PHP的映射关系。
三、配置IIS的PHP映射:

    一般情况下设置某语言或执行程序的映射关系都是通过ISAPI筛选器解决的,PHP也不例外。
    第一步:打开IIS,在默认网站上点右键选择“属性”。(如图5)

图5

    第二步:找到“主目录”标签,点右下角的“配置”按钮。(如图6)
图6

    第三步:在“添加和编辑应用程序扩展名映射”窗口中,通过浏览按钮找到c:\php\php5isapi.dll文件,扩展名输入.php,这样在解析过程中将自动调用php5isapi.dll解释PHP语言。另外还需要把“脚本引擎”和“检查文件是否存在”选中。(如图7)
图7

    第四步:返回到默认网站属性窗口的“主目录”标签,将执行权限修改为“脚本和可执行文件”,这样才能够执行PHP程序。(如图8)
图8
第五步:来到默认网站属性窗口的“文档”标签,将index.php添加到默认文档列表中。(如图9)
图9

    第六步:新建立一个TXT文本文件,内容如下。将其保存成index.php文件并复制到网站发布目录中。(如图10)
<?
echo phpinfo();
?>
图10

    第七步:在IIS中浏览index.php页面文件就能够看出真正的内容了,这说明我们的PHP环境已经搭建成功。(如图11)
图11

    小提示:如果index.php无法正常显示那么我们再来到默认网站属性中的ISAPI筛选器标签,添加一个名为PHP的筛选器,可执行文件选择c:\php\php5isapi.dll即可,这样设置后往往可以解决实际问题。(如图12)
图12

    第八步:当然我们修改设置后需要重新启动IIS或者干脆直接启动计算机即可,重新启动后PHP文件就可以顺利显示了。重新启动IIS的方法是关闭“IIS ADMIN”服务或者直接在默认网站上点右键选择“停止”再“启动”。
四、总结:

    总体上讲IIS下PHP的运行还是比较稳定的,虽然在执行效率上不如apache与PHP搭配得更如意,但是在企业服务器上必须使用IIS或者多个网站一起通过虚拟目录发布时我们就不得不选择本文介绍的方法来搭建PHP环境了。另外Apache的最新版本和PHP5也存在一定的兼容问题,直接采用IIS与PHP5搭配更可以减少不必要的兼容问题带来的麻烦