我有一台运行 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 中的站点级别而不是文件夹级别设置自定义标头,则在所有情况下都会包含自定义标头。