王骏的BLOG
编程、网络技术点滴...
<2009年12月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789
公告

留言簿(31)

随笔分类

随笔档案

文章分类

文章档案

相册

WEB开发

相关链接

搜索

最新评论

阅读排行榜

评论排行榜

 
VC知识库BLOG   首页  新随笔  联系  聚合  登录 
  随笔-113 文章-5 评论-212 Trackbacks-0
原文请见:http://hi.baidu.com/honfei/blog/item/767c4b1b90f787dfad6e7514.html

Microsoft开始大力支持php了,Zend公司和微软公司改善了微软的IIS Web服务器的FastCGI模块,它将提高PHP的性能。这个模块免费提供给IIS6和IIS7的用户,可以运行在Windows Server 2003上,并将作为vista和即将推出的Windows Server 2008的一部分。

       近日,微软和PHP社区经过一年的努力,通过FastCGI扩展,终于能让PHP在IIS 7.0上执行效率大增。而此前,PHP曾经是IIS心口上的稳痛,PHP在IIS的扩展速度一直跟不上其他服务端。而免费的FastCGI扩展的出现,使得PHP一越成为Windows平台之上的“一等公民”。

       现在网上很多IIS7下配置PHP的教程还停顿在IIS6的配置阶段,还在用isapi模式,如果是这样,还是直接用IIS6好了,不然IIS7再好,也是浪费。

综合网上教程,我总结修改出以下内容,给有需要的朋友参考:

环境:
操作系统:Windows 2003 Server
PHP版本:PHP5.26

1.安装FastCGI For IIS6
到微软官方网站http://www.microsoft.com/downloads/details.aspx?FamilyID=2d481579-9a7c-4632-b6e6-dee9097f9dc5&displaylang=en
下载fcgisetup32.msi,下载之后,双击运行进行安装.

2.安装PHP5.26
http://www.php.net下载.zip格式的版本,下载后解压至D:\Program Files\php5目录,并给"启动IIS进程帐户"赋予'读取'和'运行'权限.

3.注册PHP到FastCGI
在命令行下运行
cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"D:\Program Files\php5\php-cgi.exe"
fcgiconfig.js 默认存放目录是:C:\WINDOWS\system32\inetsrv

4.配置php.ini
D:\Program Files\php5\php.ini-recommended重命名为php.ini (注意:无需拷贝到C:\windows\)
打开D:\Program Files\php5\php.ini,修改:
extension_dir = "D:\Program Files\php5\ext"
fastcgi.impersonate = 1
cgi.fix_pathinfo=1
cgi.force_redirect = 0
extension=php_dba.dll 去掉前分号
extension=php_dbase.dll 去掉前分号
extension=php_gd2.dll 去掉前分号
extension=php_mysql.dll 去掉前分号,开启mysql支持
short_open_tag = Off
改为 On,开启<??>短标记
(注意:以上dll文件无需拷贝到C:\windows\system32)
其它根据实际需要对php.ini进行设置修改
复制D:\Program Files\php5\libmcrypt.dlllibmysql.dllD:\Program Files\php5\ext目录 (注意:无需拷贝到C:\windows\system32)
然后执行:
cscript fcgiconfig.js -set -section:"PHP" -InstanceMaxRequests:300
cscript fcgiconfig.js -set -section:"PHP" -EnvironmentVars:PHP_FCGI_MAX_REQUESTS:800
以上两项设置最大池和响应连接数,可以根据运行机器的硬件配置、使用情况修改

5.添加/编辑扩展名映射
打开IIS管理器->网站->主目录->配置->映射->添加: 来自:http://www.cnlive.net
可执行文件:C:\WINDOWS\system32\inetsrv\fcgiext.dll
扩展名:.php
动作,限制为:GET,HEAD,POST

6.添加系统环境变量
(1)在桌面我的电脑图标点击右键->属性->高级->环境变量->系统变量中找到Path,在值的最后加上D:\Program Files\php5,修改后是这样的:
变量名:Path
变量值:%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;D:\Program Files\php5
(2)点新建再添加一个变量名PHPRC值为D:\Program Files\php5

7.最后一步
最好是重起电脑,重起IIS ,开始->运行->CMD->IISRESET /RESTART ,待重起完后就完成所有配置了.

其它:
如果重启IIS后,打开测试页出现如下提示:
FastCGI Error
The FastCGI Handler was unable to process the request.
--------------------------------------------------------------------------------
Error Details:
Error Number: 5 (0x80070005).
Error Description: 拒绝访问。
HTTP Error 500 - Server Error.
Internet Information Services (IIS)
这个错误是由于在解压PHP之后,没有对启动IIS进程帐户(账户名以IWAW_开头)赋予该目录的"读取"和"运行"权限.修改文件夹安全属性,问题解决.

posted on 2009-12-07 08:47 王骏的BLOG 阅读(586) 评论(1)  编辑 收藏
Comments
  • # re: Windows 2003下FastCGI+PHP5的安装教程(转载)
    大虾米(dxm)的技术博客
    Posted @ 2009-12-09 13:31
    微软越来越走向开放了。吸取来自他竞争对手的能量。是好事。
    比如2008上就吸取了linux很多的东西。
标题  
姓名  
主页
验证码 *
内容   
  登录  使用高级评论  Top
[使用Ctrl+Enter键可以直接提交]