ColdFusion 无法在 IIS 8.5 中包含自定义 HTTP 响应标头集

ColdFusion 无法在 IIS 8.5 中包含自定义 HTTP 响应标头集

我有一台运行 IIS 8.5 和 ColdFusion 11 的 Windows 2012 R2 服务器。在特定目录(“mydirectory”)下,我添加了 HTTP 响应标头(名称:X-ResponseHeader,值:Test)。生成的 web.config 部分如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <httpProtocol>
            <customHeaders>
                <add name="X-ResponseHeader" value="Test" />
            </customHeaders>
        </httpProtocol>
    </system.webServer>
</configuration>

我创建了几个测试文件:

  • 测试文件
  • 测试.html
  • 测试.png

我曾经curl -I请求文件并检查响应标头:

  • test.cfm 不包含响应头
  • test.html包括X-ResponseHeader: Test
  • test.png 包括X-ResponseHeader: Test

此外,对不存在的 .cfm 文件的请求不包含标头,但对不存在的 .png 文件的请求包含标头。因此,我怀疑 ColdFusion 处理程序忽略或删除了标头,但我不确定原因。

另请注意:如果我在 IIS 中的站点级别而不是文件夹级别设置自定义标头,则在所有情况下都会包含自定义标头。

相关内容