【发布时间】:2012-03-20 07:26:23
【问题描述】:
我们正在尝试为 IIS 7.5 中的站点地图文件添加自定义标头 (X-Robots-Tag)。但是,IIS 似乎不支持基于文件类型或通配符(仅子文件夹)的自定义标头。
我们可以通过 Web.config 为 *.xml.gz 文件添加自定义标头吗?
我们希望避免通过代码或在我们的负载均衡器上进行自定义。
【问题讨论】:
标签: iis web-config http-headers iis-7.5
我们正在尝试为 IIS 7.5 中的站点地图文件添加自定义标头 (X-Robots-Tag)。但是,IIS 似乎不支持基于文件类型或通配符(仅子文件夹)的自定义标头。
我们可以通过 Web.config 为 *.xml.gz 文件添加自定义标头吗?
我们希望避免通过代码或在我们的负载均衡器上进行自定义。
【问题讨论】:
标签: iis web-config http-headers iis-7.5
您可以使用IIS UrlRewrite module 并添加自定义出站规则来配置自定义标头。以下是您可能想要使用的示例规则:
<system.webServer>
<rewrite>
<outboundRules>
<rule name="Set custom HTTP response header">
<match serverVariable="RESPONSE_X_Robots_Tag" pattern=".*" />
<conditions>
<add input="{REQUEST_URI}" pattern="\.xml\.gz$" />
</conditions>
<action type="Rewrite" value="The value you need for this header"/>
</rule>
</outboundRules>
</rewrite>
</system.webServer>
【讨论】:
REQUEST_FILENAME代替REQUEST_URI
Cache-Control 标头,应该使用什么?某处是否有包含RESPONSE_X_Robots_Tag 的服务器变量列表? IIS 是如何知道RESPONSE_X_Robots_Tag 与X-Robots-Tag 标头相关的?
RESPONSE_Cache_Control 正在工作以设置Cache-Control!有趣...