提醒:本页面将不再更新、维护或者支持,文章、评论所叙述内容存在时效性,涉及技术细节或者软件使用方面不保证能够完全有效可操作,请谨慎参考!

昨天帮朋友配置的IIS+PHP运行环境,今天我把详细步骤记录一下供备忘。

首先环境是Windows XP Professional系统,在这个系统下仅能安装IIS 5.1,其他系统的IIS配置大同小异这里就不多说了。

1. 准备XP原版光盘或者镜像并挂载

我们需要准备一个Windows XP Professional的 原版光盘 ,如果有的话直接把光盘插入光驱即可,然后跳过这步,当然没有的话可以去下载个原版镜像,我这里提供个信息,因涉及版权问题,大家根据下面的信息网上找一下吧。

zh-hans_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-74070.iso
md5sum:e74d72f3d90456003e9e02ba0fb7da61

如果你是使用下载的iso安装镜像的话,那么下面还需要 DAEMON Tools Lite(DTLite) 这款老牌的虚拟光驱软件,当然你电脑上有其他功能相同的软件(比如:WinMount)可以用其他软件替代。

小提示:DAEMON Tools在安装过程中选择免费许可,在安装步骤中注意不要安装不需要的插件功能,文件关联仅选择iso即可,为了便于以后手动运行,最好勾选桌面快捷方式。

DAEMON Tools 免费许可安装 DAEMON Tools 安装可选项

安装完成后运行DAEMON Tools,然后找到桌面左下角的图标,按照下图的步骤挂载iso镜像:

DAEMON Tools装载镜像

关于DAEMON Tools的详细使用方法可以参考这篇文章 《[教學] 使用 Daemon Tools Lite 掛載和卸載 iso,mds/mdf,ccd,nrg,mdx 等光碟映像檔》 ,这里完成后打开我的电脑就可以看到有个Windows XP的安装光驱的图标啦:

Windows XP 安装镜像

2. 安装IIS 5.1

依次打开 开始菜单 控制面板 添加删除程序 ,点击 添加/删除 Windows组件 ,点击下一步,如果一切正常的话很快安装过程就会结束。

添加删除组件安装IIS

如果提示找不到文件如 “需要 Windows XP Professional Service Pack 3 CD上的staxmem.dll” 这样的信息的话,请点击浏览,选择光驱(或虚拟光驱)所在的盘符下的i386文件夹,直到安装完成。

需要 Windows XP Professional Service Pack 3 CD

3. 安装FastCGI For IIS

直接到微软官方网站下载 FastCGI for IIS 或使用下面的链接:

下载后直接双击安装。

4. 安装PHP For Windows

到PHP官方网站 下载Windows版本的PHP 。最新版本的PHP没有Installer安装包,我们选择5.3的 VC9 x86 Non Thread Safe Installer 下载 。下载完成后是一个msi安装文件,直接双击安装。注意安装路径建议选择 C:\PHP ,Web Server Setup选择IIS FastCGI。

PHP For Windows安装路径 PHP For Windows FastCGI

完成PHP安装后,切换到安装路径,我们这里是 C:\PHP ,然后修改php.ini,主要是下面这几行:

fastcgi.impersonate=1
cgi.fix_pathinfo=1
cgi.force_redirect=0

如果配置前面有分号 ; ,请把分号去掉后再配置。

5. 完成IIS配置

cd %WINDIR%\system32\inetsrv
cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"C:\PHP\php-cgi.exe"
cscript fcgiconfig.js -set -section:"PHP" -InstanceMaxRequests:10000
cscript fcgiconfig.js -set -section:"PHP" -EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000

注意第二条cscript开头的命令的 -path: 指示的路径为你实际安装的PHP的路径,上面的cscript命令执行成功后会显示 INI sucessfully written

这里如果cscript命令提示:

CScript 错误: 无法找到脚本"fcgiconfig.js"的脚本引擎"JScript"

则可能你的 *.js 文件被其他程序关联了,比如Dreamweaver,你仅仅需要做下面的步骤就可以了:

regsvr32 /s %WINDIR%\system32\jscript.dll

6. 验证成果

新建一个 info.php 文件内容如下:

<?php
 phpinfo();

打开浏览器访问这个页面,看看熟悉的php配置是不是列出来了?

参考微软技术文档: 《Using FastCGI to Host PHP Applications on IIS 6.0》