Windows XP IIS5/IIS5.1 PHP 5.3.6 手工安装 fastcgi模式

PHP5.3.6安装包解压缩后按照如下方法操作:

1、修改php.ini配置
在php.ini 中加入下面的配置(当然也可以直接改php.ini中的这些配置选项)

1
2
3
4
fastcgi.impersonate = 1
fastcgi.logging = 0
cgi.fix_pathinfo=1
cgi.force_redirect = 0

2、下载FastCGI for IIS
到http://www.iis.net/download/fastcgi找下载链接,下载链接如下
32位:http://go.microsoft.com/?linkid=9707432
64位:http://go.microsoft.com/?linkid=9707433
下载完成以后直接next到安装完,不用选中那些乱七八糟的应用和工具

3、配置IIS支持PHP
IIS跟PHP开发小组串通,让php5.3在IIS上使用FastCGI的方式来跑,这样灵活很多,配置也方便了很多。
在命令行下运行

1
2
cscript %windir%\system32\inetsrv\fcgiconfig.js -add -section:”PHP” ^
-extension:php -path:”C:\PHP\php-cgi.exe”

这样系统会自动在%windir%\system32\inetsrv\fcgiext.ini中添加了如下配置

1
2
3
4
5
[Types]
php=PHP

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

C:\PHP\php-cgi.exe是我把PHP解压到的位置,你解压到那自己懂得。
如果你不想使用PHP来调用数据库,安装到这里已经算完工了,但一般人都需要MySQL,这样还需要做一些配置来完成配置。
在命令行下运行

1
2
cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:”PHP” ^
-EnvironmentVars:PHPRC:”C:\PHP\”

这跟我们在httpd.conf里加的PHPIniDir=C:\PHP\ 或添加值为”C:\PHP\”的PHPRC系统变量是一个意思,就是我们把php.ini丢哪了,指明给php-cgi.exe运行时拿来用。

再在命令行下运行

1
2
3
4
5
6
7
8
9
10
11
cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:”PHP” ^
-InstanceMaxRequests:10000

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:”PHP” ^
-EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:”PHP” ^
-ActivityTimeout:90

cscript %windir%\system32\inetsrv\fcgiconfig.js -set -section:”PHP” ^
-RequestTimeout:90

这些命令式什么意思,一看就知道了,你可以瞄一下%windir%\system32\inetsrv\fcgiext.ini看都有什么配置被加进去了。

4、IIS支持php文件的设置
添加对.php文件的支持
进入iis的管理面板,右击站点名称,选中“属性”》主目录 》映射,点击“添加”来添加对.php后缀文件的识别。
可执行文件设为:C:\WINDOWS\\system32\inetsrv\fcgiext.dll
扩展名设为:.php
然后点击“确定”添加。
添加默认首页index.php
进入iis的管理面板,右击站点名称,选中“属性”》“文档”
列表中如果没有index.php,点击“添加”,输入“index.php”点击“确定”。

如果你曾经改动过你的IIS的匿名执行权限的设置,把它设置成允许匿名访问的。

运行如下命令重启IIS

1
2
net stop iisadmin
net start w3svc

搞定。

————————————————————————————————————————–———–

给菜鸟补的课
如果你是PHP菜鸟,刚好看见了我这个配置,那么你在第一步的时候就找不着php.ini了,给你补一下课。
你需要这个步骤
0、解压并配置php配置选项
a)下载php压缩包
从http://windows.php.net/downloads/releases/php-5.3.6-nts-Win32-VC9-x86.zip下载php安装包,解压到C:\盘后把文件夹改名为PHP,看看那个C:\PHP\php-cgi.exe在就对了。

发现下载的压缩包文件名带个nts了吗?如果你一不小心,还会发现有一个php-5.3.6-Win32-VC9-x86.zip,困惑吧。这个nts叫Non Thread Safe,就是非线程安全的,而没有nts的是线程安全的。所谓线程安全就是保证运行环境Apache/IIS等使用多线程运行的时候,php程序运行起来是安全的,这时候我们通常让PHP作为Web服务器的一个模块来运行;非线程安全就是不保证线程安全,使用进程的方式(cgi/fastcgi)来运行php的时候选这个发布版。

b)哪来的php.ini(php配置文件)
把C:\PHP\php.ini-development改名成C:\PHP\php.ini,如果你是在配置公网上跑的服务器,当然就应该用php.ini-production来改成php.ini,主要区别就一些错误提示之类的东西不一样。网上跑的就要隐藏掉错误的。

c)配置php.ini
把extension_dir 前面的;去掉并改为如下:

1
extension_dir = “C:/PHP/ext/”

把short_open_tag前面的;去掉并改为如下:

1
short_open_tag = On

让php支持的写法,你可能讨厌这个写法,但是你应该喜欢,所以要改。
分别分别把

1
2
3
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll

前面的;去掉,让php支持图像(验证码)生成与处理、多字节字符的截取及MySQL的支持。

说明:分号“;”在php.ini中是注释符号。更多的php选项在php文档中都有,自己慢慢研究吧。

运行如下命令重启IIS
net stop iisadmin
net start w3svc

关于笃志情缘

人尽其责,物尽其用,不成功,也无憾,毕竟奋斗过。走自己的路吧! 笃志建站:虚拟主机、域名注册、云主机、成品网站、企业邮局、CDN加速 http://www.duzhi.net QQ:3081689173
此条目发表在服务器相关分类目录,贴了, , , 标签。将固定链接加入收藏夹。

Windows XP IIS5/IIS5.1 PHP 5.3.6 手工安装 fastcgi模式》有5条回应

  1. Linda说:

    All of these atricles have saved me a lot of headaches.

  2. Ilvan说:

    Holy Toledo, so glad I cilkecd on this site first!

  3. 狼军软件说:

    博主你好 希望和您合作 删除恶意帖子 快速百度排名 百度贴吧群发QQ2690473216

  4. Miguel说:

    And I was just wonedrnig about that too!

  5. Caesar说:

    What a pleasure to find smeoone who thinks through the issues

评论已关闭。