IIS 7.5 下PHP(FastCGI模式)配置手记

Heero.Luo发表于14年前,已被查看5385次

自从有了FastCGI,IIS支持PHP变得非常简单。

版本选择

先到官网下载PHP 5.6,可以发现有4个版本:

  • VC11 x86 Non Thread Safe
  • VC11 x86 Thread Safe
  • VC11 x64 Non Thread Safe
  • VC11 x64 Thread Safe

官网已经注明,x64版本是实验性质的,所以还是用x86版吧。至于Thead Safe(线程安全)/Non Thead Safe(非线程安全),官网并没有说明各自用途何在。Google了一番以后,我找到了答案:FastCGI是单线程执行的,因而不需要线程安全版本,去掉线程安全的防护后可以提高执行效率;而ISAPI方式则是多线程模式,所以需要采用线程安全版本。综上所述,我们应下载 VC11 x86 Non Thread Safe 这个版本。

注意,这四个版本都是通过Visual Studio 2012编译器编译的,所以要先安装Visual C++ Redistributable for Visual Studio 2012,否则无法运行。此外,由于我们选用的是x86的php,所以Visual C++ Redistributable for Visual Studio 2012也要对应地安装x86版,千万不要因为系统是64位的就装了x64版。

配置php.ini

无论是在Linux还是Windows下安装,这都是不可忽略的一步。以下配置是必须的(记得删除行首的分号):

date.timezone = "Asia/Shanghai"
fastcgi.impersonate = 1
cgi.fix_pathinfo = 1
cgi.force_redirect = 0
extension_dir = "./ext"

接下来根据自己需要启用对应的extension。

在IIS中添加PHP模块

首先确认IIS中启用了CGI功能:

打开CGI功能

打开IIS管理器后,选中左边目录树的最顶(这样可以使设置对所有站点都有效)。

IIS

首先点击“FastCGI 设置”,添加PHP为FastCGI应用程序,在新建对话框的路径文本框中选择PHP目录下的“php_cgi.exe”,其他设置按默认的就行;接着回到上级视图,打开“处理映射程序”,添加PHP的映射,配置如下图所示:

添加PHP映射

按“Win+R”调出运行对话框,输入“iisreset”重启IIS。至此,配置完成,无须拷贝文件、无须配置环境变量,一切就是这么简单。

评论 (0条)

发表评论

(必填)

(选填,不公开)

(选填,不公开)

(必填)