IIS下PHP的三种配置方式对比

 在Windows IIS 6.0下配置PHP,通常有CGI、ISAPI和FastCGI三种配置方式,这三种模式都可以在IIS 6.0下成功运行,下面我就讲一下这三种方式配置的区别和性能上的差异。
 
  1、CGI(通用网关接口/Common Gateway Interface)一般是可执行程序,例如EXE文件,和WEB服务器各自占据着不同的进程,而且一般一个CGI程序只能处理一个用户请求。这样,当用户请求数量非常多时,会大量占用系统的资源,如内存、CPU时间等,造成效能低下。
 
  2、ISAPI(Internet Server Application Program Interface)是微软提供的一套面向WEB服务的API接口,它能实现CGI提供的全部功能,并在此基础上进行了扩展,如提供了过滤器应用程序接口。ISAPI应用大多数以DLL动态库的形式使用,可以在被用户请求后执行,,在处理完一个用户请求后不会马上消失,而是继续驻留在内存中等待处理别的用户输入。此外,ISAPI的DLL应用程序和WEB服务器处于同一个进程中,效率要显著高于CGI。
 
  在Windows Server 2003的IIS6下配置ISAPI方式的PHP,配置方法是,在IIS的“WEB服务扩展”中,添加一个新的WEB服务扩展,程序后缀为PHP,ISAPI程序为php5isapi.dll,然后再“环境变量”-“系统变量”中增加变量名PHPRC,数值为php.ini的路径,在Internet信息服务管理器中,选择网站或应用程序的根目录,打开目录属性页(右键选择“属性”),再选择“主目录”。点击“配置”按钮,选择“映射”Tab页。点击“添加...”,在“可执行文件”设为: c:\php\php5isapi.dll,扩展名设为.php,选择“确认文件是否存在”,然后“确定”保存设置。重启服务器即可完成PHP的配置。
 
  3、FastCGI是可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。传统的CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性等。
 
  FastCGI已经集成于IIS7,也支持IIS6,在IIS6中的安装方法可参见微软的官方文档,我这里简单翻译一下。
 
  先点这里下载一个32位的FastCGI extension for IIS,然后将其安装,安装后的文件应该放到system32\inetsrv目录下。
 
  之后打开system32\inetsrv目录,执行下面的语句,其中c:\php为你的PHP目录,可以修改为其他数值。
 
  cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"c:\php\php-cgi.exe"
 
  在Internet信息服务管理器中,选择网站或应用程序的根目录,打开目录属性页(右键选择“属性”),再选择“主目录”。点击“配置”按钮,选择“映射”Tab页。点击“添加...”,在“可执行文件”设为: c:\windows\system32\inetsrv\fcgiext.dll,扩展名设为.php,选择“确认文件是否存在”,然后“确定”保存设置。
 
  修改php.ini文件,增加如下语句:
 
  fastcgi.impersonate = 1
  cgi.fix_pathinfo = 1
  cgi.force_redirect = 0
 
  之后打开system32\inetsrv目录,执行以下语句:
 
  cscript fcgiconfig.js -set -section:"PHP" -InstanceMaxRequests:10000
  cscript fcgiconfig.js -set -section:"PHP" -EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000
 
  最后,配置c:\php目录的安全性,使得IIS_WPG组对于这个目录有读取和执行的权限。
 
  这时候,基于FastCGI的PHP就成功配置到IIS6上了。

时间: 2014-11-17

windows+IIS 环境下以Fastcgi方式配置php 5.3.3的方法

还是感觉5.2及以前的版本配置比较方便,使用5.3配置后,我的apache居然挂了,不知道问题出在哪里,没找到解决方法,最后只能ghost还原了一下.第一步:iis6.0环境配置,这里不多介绍 第二步:下载php5.3.3的windows压缩版本:php-5.3.3-nts-Win32-VC9-x86.zip1.下载地址:http://windows.php.net/download/,选择VC9 x86 Non Thread Safe.有关PHP版本说明2.把php-5.3.3-nts-Win

iis下php mail函数的sendmail配置方法(官方推荐)

首先你需要先到从http://glob.com.au/sendmail/下载sendmail.zip文件,点此可以直接下载噢,然后把它解压到如D:\php\sendmail\目录下. 然后打开php.ini文件,找到下面这段代码 复制代码 代码如下: [mail function] ; For Win32 only. SMTP = localhost smtp_port = 25 ; For Win32 only. ;sendmail_from = me@example.com ; For Un

win2003 iis配置PHP环境图文教程

配置PHP环境 下载 FastCGI 1.5 for IIS x86 / x64,添加fastcgi映射 编辑C:\WINDOWS\system32\inetsrv\fcgiext.ini内容如下 复制代码 代码如下: [Types] php=PHP [PHP] ExePath=D:\php\php-cgi.exe InstanceMaxRequests=10000 EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000 d:\php\php.ini主要修改点如下

WIN2003+IIS6 PHP 5.3.8安装配置教程[图文]

一.安装好IIS 具体安装方法可查看:http://www.jb51.net/article/21274.htm. 二.下载并安装IIS FastCGI 下载地址:http://www.iis.net/download/fastcgi.选择 x86或者download x86,下载下来名称为 fcgisetup_1.5_rtw_x86.msi.安装后会在C:\WINDOWS\system32\inetsrv\目录下多出了5个文件fcgiconfig.js,fcgiext.dll,fcgiext.

IIS6下配置fastcgi的php的教程

FastCGI的IIS模块可以让流行的应用框架在IIS上支持FastCGI协议以提供高性能和可用性的访问服务,FastCGI面向现有的网络服务器提供高性能的CGI替代标准.具体PHP 安装方法我记录下来,其中包括出现的一个错误.环境: 操作系统:Windows 2003 Server PHP版本:PHP5.25 1.下载FastCGI For IIS6 http://www.microsoft.com/downloads/details.aspx?FamilyID=2d481579-9a7c-4

IIS7配置PHP环境图文教程(fastcgi快速最新版)

我们知道php配置有几种: 1.CGI方式加载PHP环境,通常就是IIS里面配置解释器为php.exe,早期比较常见,目前使用较少. 特点是:稳定,但效率太低. 2.ISAPI方式加载PHP环境,通常就是IIS里面配置解释器为php5isapi.dll,目前使用最多,应用最广. 特点是:多线程,效率较高,但不够稳定. 3.FastCGI方式加载PHP环境,在IIS环境里并不常见,但其它系统环境应用还是有的,不过IIS7.0开始内置FastCGI了. 特点是:高效率,高稳定性,属于将来发展趋势.

Windows Server 2012 Iis8 php环境配置方法

今天给大家做个php配置的教程,支持mysql数据库,可能偶配置环境就几下子,很容易,但希望大家仔细看,因为很多步骤都要细心的,不然走错一步,便导致整个环境配置不成功,偶不喜欢复制这复制那的,所以清一色安装包来操作,这样高效而且速度,还支持后续在线升级php.mysql. 以下是具体步骤:(软件都要靠自己去网上找,本教程不提供以下各种软件) 软件及平台要求:1.平台:windows 2012 server datacenter(数据中心版)2.环境:iis8   php5.3.20   rewr

Win2003下配置iis+php+mysql+zend图文 使其支持asp,.net,cgi,perl和php

所需软件: ActivePerl.PHP.MYSQL.Zend (一.安装IIS6.0;二.配置PHP环境;三.安装mysql;四.安装 Zend Optimizer;五.配置PHPMYADMIN) Win2003配置下iis+php+mysql+zend 2.下载php环境的相应的软件(下载地址:http://s.jb51.net/ )推荐配置:php-5.2.1-Win32.zip . mysql-5.0.37-win32.zip . ZendOptimizer-3.3.3-Windows-

阿里云完美教程 Window2003 iis+mysql+php+zend环境配置

在我的使用过程中只遇到几个小问题: 一.HTTP 错误 403.1 – 禁止访问:执行访问被拒绝 原因是执行权限不够,解决的方法是: 解决方法一: 打开"管理工具"的"Internet 信息服务",右键选择"WEB站点属性"的"主目录"选项卡,把"执行许可"的选项从"无"改为"纯脚本"就好了. 解决方法二: 1.打开IIS设置 2. 在建虚拟目录或网站时注意以下设置

2009年最新版 win2003 IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安装配置教程第1/8页

操作系统:Windows.Server.2003.R2,Enterprise.Edition,SP2,x86,CHS,VOL,MSDN本次配置PHP的服务器环境:Windows2003+ IIS6+PHP5+MySQL3+Zend+phpMyAdmin整个配置过程需要是使用拥有管理员权限的系统帐号登录Windows在整个配置过程中所示的截图可能根据各使用的系统不同,窗口界面而有所不同,但对应的选项卡栏目是相同的,只需要找到提到的对应选项卡即可. 一.下载相关软件 安装前需要准备的软件(因为我这里

IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安装配置图文教程 2009年

便于大家转载和离线阅读,本教程的HTML源码.UBB源码.PDF版本.Flash版本提供下载.下载地址:http://code.google.com/p/wpmi/downloads/list 操作系统:Windows.Server.2003.R2,Enterprise.Edition,SP2,x86,CHS,VOL,MSDN本次配置PHP的服务器环境:Windows2003+ IIS6+PHP5+MySQL3+Zend+phpMyAdmin整个配置过程需要是使用拥有管理员权限的系统帐号登录Wi

WINDOWS系统 + Apache +PHP5 +Zend + MySQL + phpMyAdmin安装配置方法

Apache 2.2.4 的 安 装 1.打开我的电脑,进入D盘,在其下新建一个文件夹P8-Server,在它下在再建在local 文件夹. 2.到其官方站点下载 apache_2.2.4-win32-x86-no_ssl.msi 并执行. 3.按3次Next按钮,安装程序要求输入你的Network Domain(网络域名).Server Domain(服务器域名)和网站管理员的E-mail,有的话就如实填写,本说明介绍的是本地自建测试环境,所以随便一下,前两个填 localhost ,邮件写自

Windows下mysql5.7.18安装配置教程

本文为大家分享了Windows下mysql5.7.18安装配置教程,供大家参考,具体内容如下 准备: 操作系统:win7 下64位的zip版本的MySQL,路径:http://dev.mysql.com/downloads/mysql/ 我下的是最新版的MySQL,解压后,目录如下: 可以看到上图,mysql5.7.18它没有data目录,如果没有data目录,安装后启动的时候就会报错: 正确安装步骤如下: 1. 进入dos的命令行,以管理员身份运行. 2. 进入MySQL的bin目录,输入my

Centos7.3下mysql5.7安装配置教程

本文大家分享了mysql5.7安装配置教程,供大家参考,具体内容如下 第一步:获取mysql YUM源 进入mysql官网获取RPM包下载地址 https://dev.mysql.com/downloads/repo/yum/ 点击 下载 右击 复制链接地址https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 得到这个 这个就是Yum仓库的rpm包 其实就是一个下载地址 第二步:下载和安装mysql源 先下载

Windows2003下php5.4安装配置教程(IIS)

本文与<Windows2003下php5.4安装配置教程(Apache2.4)>(点击打开链接)为姊妹篇,只是php所用的服务器有点不同,这里一个是Apache2.4,一个是Windows2003自带的IIS服务器. 一.在Windows2003安装IIS 1.首先打开Windows2003的控制面板,查看是否有"管理工具",没有也不要紧,点击"添加或删除程序".有的话,可以直接进入第二步,IIS的配置. 2.在弹出的窗口,选择添加/删除Windows组

MySQL5.6.31 winx64.zip 安装配置教程详解

#1. 下载 # #2.解压到本地 修改必要配置my*.ini #3.mysql install admin模式启动cmd cd mysql目录/bin 执行安装: mysqld -install 启动mysql服务: net start mysql 关闭mysql服务: net stop mysql #4.mysql 编码配置 <解压版MySQL-5.6.31-winx64 编码配置> 在根目录下面有已经写好的"my-"开头的ini文件,如:my-default.ini.

MySQL5.7.14下载安装图文教程及MySQL数据库语句入门大全

如何下载: 我先去MySQL首页下载最新版本的MySQL-链接:https://www.mysql.com/downloads/ 进入此界面下载: Downloads–>MySQL Community Edition (GPL)(这是免费版的,当然,有钱的可以用收费的,功能更强大)–>MySQL Community Server (GPL) –>选择对应的系统和电脑版本(在这里,我选择的是Window系统64位的下载) –>No thanks, just start my down

Windows2003下php5.4安装配置教程(Apache2.4)

直接配置php一直使用如同<[php]本地开发环境的部署与helloworld>的一键傻瓜包,被批为极度不专业,关键是这些一键傻瓜包LAMP的版本不好控制,端口什么的也不好调.曾经在Linux系统下自己配置过LAMP的php环境,详见<Ubuntu下LAMP环境配置教程(linux)>(点击打开链接)与<Ubuntu下图形化LAMP环境配置教程(linux)>(点击打开链接),但由于各种原因,在Windows2003系统下如何一步一步地搞出php的环境,一直没有好好研究

mysql5.7.19 winx64安装配置方法图文教程(win10)

mysql 5.7.19 winx64安装教程记录如下,分享给大家 step1 官方下载地址:https://dev.mysql.com/downloads/mysql/ 选择手动下载版本 解压到自己指定的路径 上图中的my.ini及data文件夹在压缩包里是没有的,后面需要自己添加 my.ini 如下,直接copy~ [client] port=3306 default-character-set=utf8 [mysqld] # 设置为自己MYSQL的安装目录 basedir=D:\Mysql