IIS6下配置PHP 5.3运行环境的教程

2012 年 9 月 13 日6680

今天做了一下IIS6下升级到PHP 5.3.X,但是却发现了不少问题。在以前PHP 5.2.X中,只需要使用php5isapi.dll的方式就可以,但在PHP 5.3以后却不再支持ISAPI模式了,也没有此文件。所以本文介绍使用FastCgi在IIS6来配置PHP 5.3运行环境。

1、下载PHP 5.3.X

官方下载地址:http://windows.php.net/download/

注意,一定要下载VC9 x86 Thread Safe的,文件名形式如:php-5.3.13-Win32-VC9-x86.zip

2、下载FastCGI

官方下载地址:http://www.iis.net/extensions/fastcgi

有支持IIS6和IIS5.1的32位版本和64位版本,还有支持IIS7的,因为IIS7与IIS6差别比较大,所以对于IIS7以后再介绍吧。

3、安装FastCgi

安装FastCgi没什么可介绍的,但是有一点要注意,就是系统要先安装VC9运行库才能正常运行,否则会报“FastCGI Error 14001 (0x800736b1)”之类的错误。

所以要先安装VC9运行库(即VISUAL C++ 2008)

Microsoft Visual C++ 2008 Redistributable Package (x86)下载地址:

http://download.microsoft.com/download/5/9/e/59e74271-2b59-49a1-b955-96b69cc34f38/vcredist_x86.exe

配置FastCGI

打开FASTCGI配置文件C:\WINDOWS\system32\inetsrv\fcgiext.ini,在最后[Types]修改为这样的样式

[Types]
php=PHP
[PHP]
ExePath=D:\php\php-cgi.exe

4、开始安装PHP环境

解压php-5.3.13-Win32-VC9-x86.zip压缩包到 d:\php

找到PHP安装目录下的php.ini-production并改名为php.ini文件,也有人使用php.ini-development。

修改PHP.ini文件

找到
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
; date.timezone =

更改为
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Shanghai

找到
; On windows:
; extension_dir = "ext"

改为
; On windows:
extension_dir = "D:\php\ext"

查找extension=php_,去掉以下几个扩展前面的分号(基本的几项)。

extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_xmlrpc.dll

查找short_open_tag = Off,改成On,让其支持短标签。

增加一行(非常重要)
fastcgi.impersonate = 1

开启下面两项
cgi.fix_pathinfo=1
cgi.force_redirect = 0

5、配置IIS

然后打开IIS管理器,网站上点击右键 -> 属性 -> 主目录 -> 配置 -> 添加
扩展名:.php
可执行文件:C:\WINDOWS\system32\inetsrv\fcgiext.dll (根据自己的安装路径)
动作限制为:GET,HEAD,POST,TRACE

配置IIS下PHP运行环境

6、测试PHP运行

写个php测试文件

<? phpinfo(); ?>

能看到运行界面说明就成功了!

0 0