IIS7 使用 GZIP 自动压缩我的页面。
太好了……但是,对于一个特定页面,我需要将其流式传输给用户,并Response.Flush()
在需要时使用。但是当输出被压缩时,IIS 服务器似乎会收集我所有的输出,直到页面完成,然后再压缩并将其发送到客户端。这使我尝试将内容刷新给用户的尝试无效。
有没有办法让这一页退出压缩?
一种可能的选择
我已经确定,如果我手动将内容类型设置为与 IIS 配置不匹配的内容类型c:\windows\system32\inetsrv\config\applicationhost.config
,那么 IIS 将不会对其进行压缩。例如。Response.ContentType = "x-text/html"
. 这适用于 IE8,因为它回退到显示 HTML。但 Firefox 会询问用户如何处理未知文件类型。
这可以工作,如果我可以使用另一种 Mime 类型,浏览器会接受它作为 HTML,它在applicationhost.config
. 作为参考,这些是将被压缩的 mime 类型:
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/x-javascript" enabled="true" />
<add mimeType="application/atom+xml" enabled="true" />
<add mimeType="application/xaml+xml" enabled="true" />
其他选择?
还有其他选择退出压缩的选项吗?