在IIS中执行php代码时出现缺少FastCGIModule错误

时间:2016-06-30 06:13:53

标签: php asp.net iis iis-7.5

我正在尝试加载包含php脚本的HTML文件。它托管在Windows 7 x64上的IIS 7.5中。这是HTML文件:

<!DOCTYPE html>
<html>
<body>
<H1>test</H1>

<?php
echo "My first PHP script!";
?>

</body>
</html>

我已将此页面作为IIS内的Web应用程序托管。我的web.config如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <system.webServer>
        <handlers>
            <add name="PHP53_via_FastCGI_HTML" path="*.html" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\PHP\v5.3\php-cgi.exe" resourceType="File" requireAccess="Script" />
        </handlers>
    </system.webServer>
</configuration>

当我在浏览器中浏览html文件时,会导致以下错误:

  

HTTP错误500.21 - 内部服务器错误处理程序   &#34; PHP53_via_FastCGI_HTML&#34;有一个坏模块&#34; FastCgiModule&#34;在它的   模块列表

我已经仔细检查过以下事项:

  1. CGI组件已安装在控制面板的Windows组件/功能中。
  2. IIS的ApplicationHost.config文件,其中包含<globalModules>标记内的以下添加标记:

    添加名称=&#34; FastCgiModule&#34;图像=&#34;%WINDIR%\ System32下\ INETSRV \ iisfcgi.dll&#34;

  3. IIS的ApplicationHost.config文件在<Modules>标记内包含以下添加标记:

    添加名称=&#34; FastCgiModule&#34;

  4. ApplicationHost.config中提供的与FastCgiModule相关的一些其他信息。我看到处理程序部分中也出现了以下标记。我为了简洁而修剪了它们:

    <handlers accessPolicy="Read, Script">
                    <add name="PHP_via_FastCGI" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files\PHP\v7.0\php-cgi.exe" resourceType="Either" />
                    <add name="PHP53_via_FastCGI" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\PHP\v5.3\php-cgi.exe" resourceType="Either" />
    

    我仍然遇到上述错误。任何人都可以帮助我,我现在失踪了吗?

0 个答案:

没有答案