虽然 LAMP 组合很不错
但是如果想要架设一台同时支持 PHP
ASP
ASP
NET
JSP
Perl 的 Web 虚拟主机服务器
还是用 Windows
的 IIS
最好
网上有很多介绍在 IIS
上配置 PHP 的文章
但是那些方法不是性能不好
就是升级麻烦
下面的方法可以让你在第一次配置好后
能够非常方便的进行升级
这里所说的升级是指从某个 php 版本升级到另一个 php 版本或者从某个 php 版本升级到另一个 php 版本而不是指从 php 升级到 php
准备
一台安装好的 Windows 服务器并且已经安装了 IIS
下载 windows 版的 PHP 二进制压缩包
安装
解压缩 PHP 二进制压缩包到 C:\php 目录下(这里假设 C: 盘是系统盘即安装了Windows 系统的盘如果系统盘是 D: 盘则解压缩到 D:\php 目录下以此类推下同)
然后打开我的电脑>属性>高级>环境变量>系统变量>path编辑其值在前面增加下面的路径地址
C:\php;C:\php\dlls;C:\php\extensions;C:\php\sapi;
将 phpinidist 或 phpinirecommended 复制到 C:\Windows 目录下并改名为 phpini一般正式发布网站的服务器用 phpinidist而作为调试用的服务器用 phpinirecommended 更好当然一般情况下这个 phpini 还是需要根据实际情况来修改的
下面来介绍一下几个必要的修改选项
extension_dir = C:\php\extensions
这个是 PHP 扩展所放置的目录请确保跟你实际安装的目录相同
extension=php_mbstringdll
;extension=php_big_intdll
extension=php_bzdll
extension=php_cpdfdll
extension=php_crackdll
extension=php_curldll
extension=php_dbdll
extension=php_dbadll
extension=php_dbasedll
extension=php_dbxdll
extension=php_domxmldll
;extension=php_exifdll
;extension=php_fdfdll
;extension=php_fileprodll
extension=php_gddll
extension=php_gettextdll
extension=php_hyperwavedll
extension=php_iconvdll
;extension=php_ifxdll
;extension=php_iisfuncdll
extension=php_imapdll
;extension=php_interbasedll
extension=php_javadll
extension=php_ldapdll
;extension=php_mcryptdll
extension=php_mhashdll
extension=php_mime_magicdll
extension=php_mingdll
extension=php_mssqldll
extension=php_msqldll
;extension=php_ocidll
extension=php_openssldll
;extension=php_oracledll
extension=php_pdfdll
extension=php_pgsqldll
;extension=php_printerdll
extension=php_shmopdll
;extension=php_snmpdll
extension=php_socketsdll
;extension=php_sybase_ctdll
extension=php_wapidll
extension=php_xmlrpcdll
extension=php_xsltdll
extension=php_yazdll
extension=php_zipdll
上面这些开头没有加分号的是打开的扩展加了分号的是没有打开的扩展上面的设置包含了在 Windows 上默认安装情况下可以打开所有扩展(这里列出的是 php 的)
sessionsave_path = c:\sessions
这个是 session 文件默认保存的目录这个目录必须是一个存在的目录不然默认的 session 功能会无效我这里设置的是一个 ramdisk 上的一个目录将 sessionsave_path 设置在 ramdisk 上可以加快 session 处理的速度如果你没有安装 ramdisk你可以把它指定到其他盘的任何一个目录下如 C:\sessions 目录C:\Windows\Temp 目录等
OK基本工作作完了现在该配置 IIS 了
打开 Internet 信息服务(IIS)管理器在 Web 服务扩展里选择添加一个新的 Web 服务扩展扩展名可填写PHP ISAPI 扩展要求的文件选择C:\php\sapi\phpisapidll(如果安装的是 PHP则此处是 C:\php\sapi\phpisapidll下同)并设置扩展状态为允许
打开网站>属性>ISAPI 筛选器>添加筛选器名称可填写PHP可执行文件仍然选择 C:\php\sapi\phpisapidll
打开网站>属性>主目录>应用程序设置>配置>应用程序扩展>添加可执行文件还是选择 C:\php\sapi\phpisapidll扩展名填写php动作限制为HEADGETPOST
打开网站>属性>文档>启用默认内容文档>添加可以将 indexphp 添加为默认内容文档
然后选择服务器机器名>所有任务>重新启动 IIS来重启 IIS
测试
在默认网站发布目录下建立一个测试页面
下载phptestphp
phpinfo();
?>
如果打开这个页面能够看到 php 安装配置信息就算是安装成功了
如果想要更优化的执行 php 程序可以安装 ZendOptimizerWindowsiexe 这个东西安装非常简单这里就不介绍了
升级
现在升级就非常简单了只需要将新版本的 PHP 二进制压缩包下载下来将原来的 C:\php 目录删除将新版本解压缩到 C:\php 目录中然后重新启动一下 IIS 就可以了不需要修改任何配置也不需要往 System 目录中复制任何文件是不是很方便啊?