【问题标题】:How do I make IIS compress .svg files?如何让 IIS 压缩 .svg 文件?
【发布时间】:2012-10-04 19:32:25
【问题描述】:

我正在尝试在 web.config 中完成此操作:

<staticContent>
  <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
</staticContent>
<httpCompression>
    <staticTypes>
        <add mimeType="image/svg+xml" enabled="true"/>
    </staticTypes>
</httpCompression>
<urlCompression doStaticCompression="true" doDynamicCompression="true"/>

Content-Encoding: gzip 永远不会出现在响应标头中。不过,压缩也适用于 CSS 等其他类型。

【问题讨论】:

标签: iis optimization compression gzip


【解决方案1】:

@Dominique Alexandre 指出了一个解决方案,该解决方案展示了如何编辑 applicationHost.config 文件,它工作得很好。

我只是想添加如何使用 IIS 管理器 GUI 执行此操作。

转到 IIS 管理器 > YOUR_SERVER > 在管理部分 > 配置编辑器 > 展开 system.webServer > httpCompression > dynamicTypes

然后添加你想要额外压缩的mime类型。

【讨论】:

  • Dominique 的回答已被删除。然而,Dominique 回答的关键部分是将用户指向this answer,这可以适应问题。
【解决方案2】:

您需要在 IIS 中为 SVG 启用它作为较低级别。这个帖子有答案:https://stackoverflow.com/a/23940235/15233

【讨论】:

  • 这个链接得到了答案!
【解决方案3】:

在我的例子中,image/svg+xml 已经被列为&lt;staticTypes&gt; 下的 MIME 类型,但它仍然无法正常工作。一时兴起,我还将 mime 类型添加到 &lt;dynamicTypes&gt; 并解决了问题。

【讨论】:

    【解决方案4】:

    改变mime-type真的不好。

    请参阅这篇文章,了解如何实现一个自定义 httpmodule,该模块只需几行代码即可为您完成 gzip。

    http://laubplusco.net/gzip-svg-files-asp-net/

    【讨论】:

      【解决方案5】:

      不相关,请参阅 Dominique Alexandre 解决方案

      好的,没有人有答案。所以我会在这里发布我的临时解决方法。

      我将 mime 类型更改为 text/xml,所以它被 IIS GZipped:

      <mimeMap fileExtension=".svg" mimeType="text/xml" />
      

      【讨论】:

      • svg 文件是否在浏览器中正确呈现?压缩有效,但这导致 svg 文件根本无法为我呈现。
      • 如果文件是image(jpeg)类型呢
      猜你喜欢
      • 2013-12-23
      • 2015-05-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-10
      相关资源
      最近更新 更多