虽然 lamp 组合很不错,但是如果想要架设一台同时支持php、asp、asp.net、jsp、perl的web虚拟主机服务器,还是用 windows 2003的iis 6最好。网上有很多介绍在iis 6上配置php的文章,但是那些方法不是性能不好,就是升级麻烦。下面的方法可以让你在第一次配置好后,能够非常方便的进行升级。

  这里所说的升级,是指从某个php4版本升级到另一个php4版本,或者从某个php5版本升级到另一个php5版本,而不是指从php4升级到php5。

  准备:

  1、一台安装好的 windows 2003 服务器,并且已经安装了 iis 6。

  2、下载 windows 版的 php 二进制压缩包

  安装:

  解压缩 php 二进制压缩包到 c:\php 目录下(这里假设 c: 盘是系统盘,即安装了windows 系统的盘,如果系统盘是 d: 盘,则解压缩到 d:\php 目录下,以此类推,下同)。

  然后打开“我的电脑”->“属性”->“高级”->“环境变量”->“系统变量”->“path”,编辑其值,在前面增加下面的路径地址:

  c:\php;c:\php\dlls;c:\php\extensions;c:\php\sapi;

  将 php.ini-dist 或 php.ini-recommended 复制到 c:\windows 目录下,并改名为 php.ini,一般正式发布网站的服务器用 php.ini-dist,而作为调试用的服务器用 php.ini-recommended 更好。当然一般情况下,这个 php.ini 还是需要根据实际情况来修改的。

  下面来介绍一下几个必要的修改选项:

  extension_dir = “c:\php\extensions”

  这个是 php 扩展所放置的目录,请确保跟你实际安装的目录相同。

  extension=php_mbstring.dll

  ;extension=php_big_int.dll

  extension=php_bz2.dll

  extension=php_cpdf.dll

  extension=php_crack.dll

  extension=php_curl.dll

  extension=php_db.dll

  extension=php_dba.dll

  extension=php_dbase.dll

  extension=php_dbx.dll

  extension=php_domxml.dll

  ;extension=php_exif.dll

  ;extension=php_fdf.dll

  ;extension=php_filepro.dll

  extension=php_gd2.dll

  extension=php_gettext.dll

  extension=php_hyperwave.dll

  extension=php_iconv.dll

  ;extension=php_ifx.dll

  ;extension=php_iisfunc.dll

  extension=php_imap.dll

  ;extension=php_interbase.dll

  extension=php_java.dll

  extension=php_ldap.dll

  ;extension=php_mcrypt.dll

  extension=php_mhash.dll

  extension=php_mime_magic.dll

  extension=php_ming.dll

  extension=php_mssql.dll

  extension=php_msql.dll

  ;extension=php_oci8.dll

  extension=php_openssl.dll

  ;extension=php_oracle.dll

  extension=php_pdf.dll

  extension=php_pgsql.dll

  ;extension=php_printer.dll

  extension=php_shmop.dll

  ;extension=php_snmp.dll

  extension=php_sockets.dll

  ;extension=php_sybase_ct.dll

  extension=php_w32api.dll

  extension=php_xmlrpc.dll

  extension=php_xslt.dll

  extension=php_yaz.dll

  extension=php_zip.dll

  上面这些,开头没有加分号的是打开的扩展,加了分号的是没有打开的扩展。上面的设置包含了在 windows 2003 上默认安装情况下可以打开所有扩展(这里列出的是 php 4 的)。

  session.save_path = c:\sessions

  这个是 session 文件默认保存的目录,这个目录必须是一个存在的目录,不然默认的 session 功能会无效。我这里设置的是一个 ramdisk 上的一个目录。将 session.save_path 设置在 ramdisk 上可以加快 session 处理的速度。如果你没有安装 ramdisk,你可以把它指定到其他盘的任何一个目录下,如 c:\sessions 目录、c:\windows\temp 目录等。

  ok,基本工作作完了,现在该配置 iis 了。

  打开“ internet 信息服务(iis)管理器”,在“ web 服务扩展”里,选择“添加一个新的 web 服务扩展”,扩展名可填写“php isapi 扩展”,要求的文件选择:c:\php\sapi\php4isapi.dll(如果安装的是 php5,则此处是 c:\php\sapi\php5isapi.dll,下同),并设置扩展状态为允许。

  打开“网站”->“属性”->“isapi 筛选器”->“添加”,筛选器名称可填写“php”,可执行文件仍然选择 c:\php\sapi\php4isapi.dll。

  打开“网站”->“属性”->“主目录”->“应用程序设置”->“配置”->“应用程序扩展”->“添加”,可执行文件还是选择 c:\php\sapi\php4isapi.dll。扩展名填写“.php”,动作限制为“head,get,post”。

  打开“网站”->“属性”->“文档”->“启用默认内容文档”->“添加”,可以将 index.php 添加为默认内容文档。

  然后选择“服务器机器名”->“所有任务”->“重新启动 iis”来重启 iis。

  测试

  在默认网站发布目录下,建立一个测试页面:

  下载:phptest.php

  phpinfo();

  ?>

  如果打开这个页面能够看到 php 安装配置信息,就算是安装成功了。

  如果想要更优化的执行 php 程序,可以安装 zendoptimizer-2.6.0-windows-i386.exe ,这个东西安装非常简单,这里就不介绍了。

  升级

  现在升级就非常简单了。只需要将新版本的 php 二进制压缩包下载下来,将原来的 c:\php 目录删除,将新版本解压缩到 c:\php 目录中,然后重新启动一下 iis 就可以了。不需要修改任何配置,也不需要往 system32 目录中复制任何文件。是不是很方便啊?