在 IIS6 上安装 PHP5 时出错

num*_*one 7 php iis-6 fastcgi php5

我正在尝试在使用 IIS6 的 Windows Server 2003 机器上安装 PHP。我按照本指南安装它,包括使用 fastCGI 的二进制文件。但是,当我创建 phpinfo(); 时,我认为我做的一切都是正确的。页面我得到以下信息:服务器错误,无法连接到 fastcgi 服务器。

我试过查看我能想到的所有日志。IIS 日志中没有任何有用的内容,PHP 甚至从未在我的事件日志中记录错误或任何内容。

请帮助,谢谢:)

Kev*_*Kev 11

这是一个相当过时的博客条目,从那时起生活已经有了很大的进展。因此,忘记您在该页面上阅读的所有内容:)

1.下载PHP:

下载适用于 Windows 的最新稳定版 PHP。在这种情况下,下载 PHP 5.3.6 x86 非线程安全 zip 文件(注意:版本号可能会随着 PHP 团队发布新的稳定二进制文件而变化):

http://windows.php.net/download/
http://windows.php.net/downloads/releases/php-5.3.6-nts-Win32-VC9-x86.zip

将 zip 文件的内容解压缩到一个名为的文件夹中,C:\PHP以便在该文件夹中具有以下子文件夹结构:

C:\PHP\dev , C:\PHP\ext , C:\PHP\extras, etc
Run Code Online (Sandbox Code Playgroud)

将其中一个php-*.ini文件重命名为php.ini并根据您可能有的任何要求进行编辑。

2. 安装/配置微软针对 IIS5.1/6.0 的 FastCGI 扩展:

安装微软的 IIS6 FastCGI 扩展,可以从这里下载:

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

安装后,进行编辑C:\Windows\System32\InetSrv\fcgiext.ini,使其仅包含以下内容:

[Types]
php=PHP

[PHP]
ExePath=C:\PHP\php-cgi.exe
Run Code Online (Sandbox Code Playgroud)

3.配置IIS PHP Scriptmap:

.php通过右键单击站点并选择属性,编辑或添加脚本映射到您选择的网站(或者您可以全局添加):

在此处输入图片说明

选择Home Directory选项卡并单击Configuration

在此处输入图片说明

单击Add(或者如果您仍然.php列出了脚本映射,则将其删除并重新添加)。

您需要使用以下值填充 Executable 和 Extension 字段:

Executable: C:\WINDOWS\system32\inetsrv\fcgiext.dll
Extension: .php
Run Code Online (Sandbox Code Playgroud)

单击确定并保存这些更改。

4. 在 PHP.INI 中配置 PHP FastCGI 设置:

C:\PHP\php.ini在编辑器中打开并找到并配置这些设置:

fastcgi.impersonate = 1
cgi.fix_pathinfo = 1
cgi.force_redirect = 0
date.timezone = Europe/London  ; (http://uk3.php.net/manual/en/timezones.php)
Run Code Online (Sandbox Code Playgroud)

似乎您现在需要设置时区phpinfo();才能正确呈现页面,但无论如何设置它是个好主意。

5. 测试 PHP:

创建一个文件,调用test.php如下:

<?php
    phpinfo();
?>
Run Code Online (Sandbox Code Playgroud)

浏览到此页面,如果一切正常,您应该看到:

在此处输入图片说明

之后,一切都由您来微调您的配置,例如决定使用哪些扩展等。

思考后:

根据系统的设置方式,您可能需要调整C:\PHP文件夹的权限。如果这是一个非常好的安装,并且您的站点使用网络服务帐户在应用程序池中运行,并且您使用的是生成的IUSR_<MACHINE_NAME>匿名帐户,那么您不需要更改任何内容。