如何为下载的zip文件关闭HTTP压缩?

时间:2011-02-21 05:35:42

标签: asp.net http compression zip

我有一个启用了HTTP压缩的ASP.NET Web应用程序(通过IIS设置)。该应用程序的一个功能包括创建多个文本文件并将它们打包为单个zip文件以供用户下载。

启用HTTP压缩后,应用程序创建的文件将被压缩两次 - 一次是Web应用程序,一次是HTTP压缩;结果是当用户下载zip文件时,它有1个文件,即应用程序生成的zip文件,第二个zip文件包含原始内容。

我的要求是仅对zip文件禁用HTTP压缩。我该如何实现这一目标?文件扩展名“zip”未包含在配置数据库文件中以进行压缩。

2 个答案:

答案 0 :(得分:1)

没关系,我发现了问题所在:http://support.microsoft.com/kb/841120

虽然这篇文章说Sharepoint,同样的解决方案也适用于我的情况。我通过在我的代码中将MIME类型更改为“application / octet-stream”而不是“application / x-zip-compressed”来修复它(因为我正在动态生成zip文件)。这似乎已经解决了。

答案 1 :(得分:0)

1.通过在命令提示符处执行以下命令来禁用全局静态压缩: adsutil set w3svc / filters / compression / parameters / HcDoStaticCompression false

查看网站上面提到的详细信息,因为这些摘录来自:

http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/502ef631-3695-4616-b268-cbe7cf1351ce.mspx?mfr=true

另请查看http://blogs.msdn.com/b/carloc/archive/2008/12/31/how-to-disable-http-compression-for-specific-file-types.aspx

这可能会有所帮助