【问题标题】:IIS does not seem to be compressing response created by ashxIIS 似乎没有压缩 ashx 创建的响应
【发布时间】:2018-10-10 13:49:35
【问题描述】:

我有一个 ashx 处理程序,响应未压缩。客户端收到的content-encoding为空。

站点的 IIS 设置启用了静态和动态压缩。

对类似问题的研究表明,有些人在IIS配置编辑器的Web服务器节点中有一个httpCompression节点。我没有这样的节点。我有一个 url 压缩节点,我已将所有内容设置为 true。也许这取决于 IIS 版本。操作系统为Windows Server 2008 R2。

我将尝试使用 filter 属性和 GZipstream 类“强制”压缩(感谢 Rick Strahl 的博客)。如果有人能告诉我为什么 IIS 没有“自动压缩”或者可以指出我的解决方法中的任何问题,我将不胜感激。

更新:GzipStream 附加到响应过滤器将客户端看到的内容长度减少了一半,这似乎表明“手动”压缩正在做某事。

我知道这是以前在这里问过的:

.ashx handler not getting gzip compressed despite IIS Config setting

但是,上一个问题没有得到任何答案,所以我再次问这个问题。

【问题讨论】:

  • 您在发出 HTTP 请求时是否在请求标头中添加“Accept-Encoding”、“gzip”?
  • 我想是这样,但我会在我回到办公室时检查。谢谢
  • 看来你是对的。我没有在请求中设置 Accept-Encoding 标头。哦!非常感谢。虽然已经看到在代码中压缩/解压缩是多么容易,但我想我会坚持下去。它让我可以完全控制压缩的内容和不压缩的内容。
  • @user123456 如果您将您的评论作为答案重新发布,我会指出这是已接受的答案

标签: asp.net .net gzip ashx


【解决方案1】:

请检查您在发出 HTTP 请求时是否在请求标头中添加了 Accept-Encoding"、"gzip"。

【讨论】:

    猜你喜欢
    • 2011-06-07
    • 1970-01-01
    • 2011-05-09
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 2015-05-04
    • 2021-03-01
    • 1970-01-01
    相关资源
    最近更新 更多