Php5.3.6的FastCGI模式安装配置,跟原来ISAPI不一样,如果你安装不成功的话不妨注意下中间的提示。也是经人指点才发现的问题所在,跟大家分享了 觉得有用的拿走,有意见请留言

 

IIS6.0 + PHP 5.3.6 安装详解
1.首先必须明白PHP的两种执行方式:ISAPI和FastCGI。
(1)ISAPI(Internet Server Application Program Interface)是微软提供的一套面向WEB服务的API接口,它能实现CGI提供的全部功能,并在此基础上进行了扩展,如提供了过滤器应用程序接口。ISAPI应用大多数以DLL动态库的形式使用,可以在被用户请求后执行,,在处理完一个用户请求后不会马上消失,而是继续驻留在内存中等待处理别的用户输入。此外,ISAPI的DLL应用程序和WEB服务器处于同一个进程中,效率要显著高于CGI。
(2)FastCGI是可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。传统的CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性等。
FastCGI已经集成于IIS7也支持IIS6,在IIS6中的安装方法以下详述。
2.PHP5.3.6文件里面没有php5isapi.dll取而代之的是php5nsapi.dll原因:
PHP5.3 是不能在IIS6上面通过ISAPI扩展运行的,而且在PHP5.3 文件里面也没有php5isapi.dll,取而代之的是php5nsapi.dll,换句话说PHP5.3以后的版本就不再用ISAPI进行扩展在IIS里运行了,只能通过FastCGI的方式执行。据说它的效率很高的哟。(一直郁闷为什么我下载的php没有php5isa.dll,没想到PHP5.3不支持ISAPI了,晕哦)
3.版本和下载地址
1。在windows下使用Apache+PHP的,请选择VC6版本
2。在windows下使用IIS+PHP的,请选择VC9版本
如果是以FastCGI来执行PHP,建议选择Non Thread Safe版本,如果是以ISAPI来执行PHP,建议选择Thread Safe版本
FASTCGI http://www.iis.net/expand/FastCGI (下载X86版本)
PHP http://www.php.net/downloads.php

安装图解

1.建议安装之前直接先安装.net3.5 因为安装FastCGI会提示需要.net2.0以上

 

windows下IIS6.0+FastCGI1.5+PHP 5.3.6的安装配置_windows php 安装 windo


2.下载FastCGI

 

 

windows下IIS6.0+FastCGI1.5+PHP 5.3.6的安装配置_windows php 安装 windo_02

 

安装后在 C:\WINDOWS\system32\inetsrv 目录下产生了五个文件。如下图

 

windows下IIS6.0+FastCGI1.5+PHP 5.3.6的安装配置_windows php 安装 windo_03

 

同时在 IIS 的 “Web 服务扩展”里多了 FastCGI Handler

 

windows下IIS6.0+FastCGI1.5+PHP 5.3.6的安装配置_windows php 安装 windo_04

 

3.安装php5.3.6,建议使用.zip而不实用.msi的安装版,此例以zip为例

解压php-5.3.6-Win32-VC9-x86到C:\php下

(1)注册 PHP 到 FastCGI

打开 C:\WINDOWS\system32\inetsrv\fcgiext.ini 文件

在 [Types] 下添加以下配置:

[Types]
php=PHP

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

“php”表示扩展名,“PHP”是配置节名称,以“[PHP]”定义。

(2) 配置 php.ini

将 C:\PHP\php.ini-production 复制一个,然后重命名为 C:\PHP\php.ini

打开 C:\PHP\php.ini,
修改PHP.ini文件:
1。第531行改为:display_errors = On
2。第542行改为:display_startup_errors = On
3。第624行改为:error_prepend_string = "<br><font color=#ff0000>"
4。第630行改为:error_append_string = "</font><br><br>"
5。第813行改为:extension_dir = "D:\php\php_setup_files\php-5.3-vc9\ext\"
6。第854行改为:fastcgi.impersonate = 1
7。从948行到988行根据自己的需要修改
8。第997行改为:date.timezone = asia/Shanghai

其它的根据实际需要对 php.ini 进行设置修改,这里只针对能跑 php,修改完记得重启 IIS。(记得要细心哦:-D)

这里是重点哦

配置PHP.INI的时候就在那个安装目录编辑好,再剪切到(注意哦,是剪切到)C:\windows目录下,或者复制过去再把C:\php\php.ini删掉效果也一样的

C:\PHP\目录下的所有dll文件复制到C:\windows\system32下,如果已经有若干同名文件存在,覆盖即可。

还有就是有个extension=php_zip.dll的扩展不必要的话不要打开,否则会报错,因为PHP安装目录下的EXT文件夹内缺少php_zip.dll文件,如果必需的话需要自己下载php_zip.dll文件放到该目录下才行

特别提醒:注意php文件夹的权限问题,不成功一般都是这个问题造成的

?5. 配置网站

右键网站 => 属性 => 主目录 => 配置 => 添加,如下图配置:

 

windows下IIS6.0+FastCGI1.5+PHP 5.3.6的安装配置_windows php 安装 windo_05

 

可执行文件路径:C:\WINDOWS\system32\inetsrv\fcgiext.dll

6.权限问题

查看你的网站访问用户IUSR_***,添加c:/php权限,添加网站根目录wwwroot权限,写php测试页测试

 

windows下IIS6.0+FastCGI1.5+PHP 5.3.6的安装配置_windows php 安装 windo_06

 

index.php测试页

<?php
phpinfo();
?>

7.测试

 

windows下IIS6.0+FastCGI1.5+PHP 5.3.6的安装配置_windows php 安装 windo_07 


 

1.首先必须明白PHP的两种执行方式:ISAPI和FastCGI。
 

(1)ISAPI(Internet Server Application Program Interface)是微软提供的一套面向WEB服务的API接口,它能实现CGI提供的全部功能,并在此基础上进行了扩展,如提供了过滤器应用程序接口。ISAPI应用大多数以DLL动态库的形式使用,可以在被用户请求后执行,,在处理完一个用户请求后不会马上消失,而是继续驻留在内存中等待处理别的用户输入。此外,ISAPI的DLL应用程序和WEB服务器处于同一个进程中,效率要显著高于CGI。
 

(2)FastCGI是可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。传统的CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性等。
FastCGI已经集成于IIS7也支持IIS6,在IIS6中的安装方法以下详述。