首页 > 解决方案 > 如何使用 IIS 启用压缩

问题描述

我已遵循此文档并为我的网站启用了动态和静态压缩。

在此处输入图像描述

但是当我在这里测试网站时,没有启用压缩。

在此处输入图像描述

我已经验证了HttpCompression

<system.webServer>
  <httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
    <staticTypes>
      <add mimeType="text/*" enabled="true" />
      <add mimeType="message/*" enabled="true" />
      <add mimeType="application/javascript" enabled="true" />
      <add mimeType="application/atom+xml" enabled="true" />
      <add mimeType="application/xaml+xml" enabled="true" />
      <add mimeType="image/svg+xml" enabled="true" />
      <add mimeType="*/*" enabled="false" />
    </staticTypes>
    <dynamicTypes>
      <add mimeType="text/*" enabled="true" />
      <add mimeType="message/*" enabled="true" />
      <add mimeType="application/x-javascript" enabled="true" />
      <add mimeType="application/javascript" enabled="true" />
      <add mimeType="*/*" enabled="false" />
    </dynamicTypes>
    <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
  </httpCompression>
</system.webServer>

我还检查了以下 IIS 设置: 在此处输入图像描述

标签: iiscompressiongziphttp-compression

解决方案


我从您发布的标题中看到该网站位于云端(即 via 和 x-cache 标题)。

因此,您可能需要调查让云端提供压缩数据:https ://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html

我对云端不是特别熟悉,但由于它添加了via标题,它充当了代理..

..noCompressionForProxies = True你在你的 IIS 设置屏幕截图中。

这有一些关于更改该设置的信息https://community.spiceworks.com/topic/1989103-help-with-enabling-nocompressionforproxies-in-applicationhost-config-in-iis

作为第一个测试,您可以尝试绕过云端访问您的站点以直接测试 IIS 设置。


推荐阅读