fcgiconfig.js - 这个配置fastgci的扩展。这个脚本更新fcgiext.ini文件,修改iis元库,如果有必要的话重复使用web服务应用池。
这里配置FastCGI有两种方法,一种是通过命令行来实现配置,另一种直接修改fcgiext.ini文件。
1. 通过命令行来实现配置
打开命令行,将地址转换到C:Windowssystem32inetsrv,输入以下命令
cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"D:Webphpphp-cgi.exe" cscript fcgiconfig.js -set -section:"PHP" -InstanceMaxRequests:5000 cscript fcgiconfig.js -set -section:"PHP" -EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000 cscript fcgiconfig.js -set -section:"PHP" -RequestTimeout:360 cscript fcgiconfig.js -set -section:"PHP" -ActivityTimeout:120
脚本的含义,分别是:
-
注册PHP到FastCGI。
InstanceMaxRequests 用来设置应用程序池回收。FastCGI进程请求数达到InstanceMaxRequests数值5000,应用程序池将自动回收。默认值是1000。
当环境变量PHP_FCGI_MAX_REQUESTS达到10000将自动回收应用程序池。
RequestTimeout 设置请求超时时间,也就是请求允许的最大时间,如果FastCGI进程请求超过此设置将被禁止,值是90秒。
ActivityTimeout 指定FastCGI进程请求的最大活跃时间,在设定时间内,FastCGI进程和IIS没有通信,将终止进程。默认值是70秒。
打开C:windowssystem32inetsrvfcgiext.ini文件,加入
[Types] php=PHP [PHP] ExePath=D:Webphpphp-cgi.exe InstanceMaxRequests=5000 EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000 RequestTimeout=360 ActivityTimeout=120
提示:“php” 表示扩展名,“PHP” 是配置节名称,以 “[PHP]” 定义。
把上面代码复制到fcgiext.ini的末尾,保存就好了。
第五步:配置PHP
打开PHP安装目录,即D:WebPHP,我们可以看到目录下有两个这样的文件 php.ini-development 和 php.ini-production,第一个是开发使用的配置文件,第二个是生产环境的配置,因为我们是在本机做开发,所以选择前者。将php.ini-development复制一份到同目录下,并改名为 php.ini。这个php.ini 就是当前使用的配置文件,以下几步都是在修改这个php.ini文件的内容。 另外要注意的是修改php.ini文件后需重新启动IIS服务,新设置才会生效。参见文档:如何重启IIS服务的方法
1. 设置关于FastCGI部分
找到下面几行,那前面的引号“;” 去掉,参数设置为如下
fastcgi.impersonate = 1 cgi.fix_pathinfo= 1 cgi.force_redirect = 0
它们的说明请参考cgi.force-redirect;cgi.fix-pathinfo;fastcgi.impersonate。
2. 指定PHP扩展库的存放目录
在Windows下PHP的扩展库通常以 DLL 形式存放在PHP的ext目录中。
使用文本工具打开php.ini文件,查找extension_dir = "ext",也就是在 On windows 下面那一行。把它前面的分号“;”去除掉,改为如下:









