IIS 10 PHP 重写规则未运行

IIS 10 PHP 重写规则未运行

我正在尝试将所有 PHP 请求重写为 IIS 10/Windows Server 2016 上的 410 Gone。使用此规则后,PHP 请求将返回 404 错误。如果我将模式更改为“^.*.ph1”,则对 /test.ph1 的请求将返回 410。

在 URL 重写规则之前,什么可以捕获 PHP 请求并返回 404?此服务器上未安装 PHP。

 <rewrite>
  <rules>
    <rule name="RequestBlockingRule1" stopProcessing="true">
      <match url=".*" />
      <conditions>
        <add input="{URL}" pattern="^.*\.php" />
      </conditions>
      <action type="CustomResponse" statusCode="410" statusReason="Gone" statusDescription="Gone" />
    </rule>
  </rules>
</rewrite>

答案1

IIS 请求过滤将在 URL 重写规则之前捕获请求,并设置 404.7 响应(以 404 的形式发送回浏览器)。

相关内容