IIS 6 下配置以 FastCGI 跑 PHP

环境: 操作系统:Windows 2003 Server SP2 PHP 版本:php-5.2.6-Win32

1.下载 FastCGI For IIS6

http://www.iis.net/download/fastcgi

下载之后,双击运行进行安装。

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

  1. fcgiext.dll – fastcgi处理程序
  2. fcgiext.ini – 配置文件
  3. fcgiconfig.js – FastCGI的控制脚本

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

2.下载 PHP5.2.14 Windows 版

http://www.php.net/downloads.php

下载 .zip 格式的版本,下载后解压至 c:\PHP 目录,并给 IIS 启动帐户组或用户赋予读取和运行权限。如下图:

你可以根据自己的意愿解压到别的目录。

3. 注册 PHP 到 FastCGI

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

; This is the configuration file for the FastCGI handler for IIS 6.0.    
; The FastCGI handler will look for this file in the same directory as     
; fcgiext.dll. By default, the FastCGI installer will place this file into     
; the %windir%\system32\inetsrv directory.

我个人的理解是,只要“Web 服务扩展”里的 FastCGI Handler 为允许时,在加载 fcgiext.dll 时,会读取 fcgiext.ini 配置文件的内容,根据里面的配置为每个网站提供映射。

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

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

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

4. 配置 php.ini

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

打开 C:\PHP\php-5.2.14-Win32\php.ini,修改:

extension_dir = "C:\PHP\php-5.2.14-Win32\ext"    
fastcgi.impersonate = 1

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

5. 配置网站

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

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

6. 写个 php 测试下吧

<?php    
phpinfo();     
?>

看到类似以下效果说明你的服务器可以跑 php 了。

打开后如果出现提示:No input file specified. 估计是没配置 fastcgi.impersonate

参考  http://hi.baidu.com/imdao/blog/item/16583512f11cb654f819b858.html

Configure the FastCGI Extension for IIS 6.0

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java帮帮-微信公众号-技术文章全总结

Quartz调度源码分析【面试+工作】

Quartz内部提供的调度类是QuartzScheduler,而QuartzScheduler会委托QuartzSchedulerThread去实时调度;当调度...

14120
来自专栏小俊博客

kangle一键安装脚本

1.6K40
来自专栏运维小白

10.8 ps命令

监控系统状态 ps 查看系统进程 用法:ps aux、ps -elf STAT部分说明 D 不能中断的进程 R run状态的进程 S sleep状态的进程 ...

22860
来自专栏Java技术分享圈

杨老师课堂之Nginx学习之反向代理

6220
来自专栏程序员的SOD蜜

SqlServer双机热备技术实践笔记

SqlServer双机热备,大体上可以通过发布订阅,日志传送,数据库镜像来实现。 1,发布--订阅 是最早最简单的方案,但需要注意发布的时候,发布进程必须对快照...

1.1K70
来自专栏JMCui

Linux 日常使用小记.

一、Oracle VirtualBox安装Linux7.0全屏设置 1. 点击菜单栏 设备 –> 分配光驱 –> 选择一个虚拟光盘,找到VirtualBox安装...

44560
来自专栏西安-晁州

nodejs设置服务端允许跨域

//设置跨域访问 app.all('*', function(req, res, next) { res.header("Access-Control-...

25600
来自专栏meteorzx

express模拟接口

Failed to load http://192.168.xxx.xxx:9092/api/user/query?id=user123&name=%E6%B5...

49960
来自专栏IT探索

linux命令使用方法

在虚拟机软件的菜单栏中一次选择“虚拟机->设置->选项->共享文件夹”,在右侧选启用或在下次电源关闭或挂起前启用,点击下面的添加,下一步,在主机路径中选中win...

15120
来自专栏雪胖纸的玩蛇日常

python3+django2 开发易语言网络验证(下)

28530

扫码关注云+社区

领取腾讯云代金券