在Azure应用程序服务上启用gzip压缩

在Azure应用程序服务上启用gzip压缩,azure,web-config,gzip,azure-web-app-service,Azure,Web Config,Gzip,Azure Web App Service,我在microsoft azure中托管了一个web应用程序。由于本地IIS对静态和动态内容都使用压缩,我希望这也能在azure平台上运行。由于压缩似乎不起作用,例如json和css文件返回时未压缩: 我曾尝试设置压缩,如以下几篇文章(例如或)所述,但结果没有任何变化: <system.webServer> <urlCompression doStaticCompression="true" doDynamicCompression="true" /> &

我在microsoft azure中托管了一个web应用程序。由于本地IIS对静态和动态内容都使用压缩,我希望这也能在azure平台上运行。由于压缩似乎不起作用,例如json和css文件返回时未压缩:

我曾尝试设置压缩,如以下几篇文章(例如或)所述,但结果没有任何变化:

<system.webServer>
    <urlCompression doStaticCompression="true" doDynamicCompression="true" />
  <httpCompression>
    <dynamicTypes>
    <clear />
    <add enabled="true" mimeType="text/*"/>
    <add enabled="true" mimeType="message/*"/>
    <add enabled="true" mimeType="application/x-javascript"/>
    <add enabled="true" mimeType="application/javascript"/>
    <add enabled="true" mimeType="application/json"/>
    <add enabled="false" mimeType="*/*"/>
    <add enabled="true" mimeType="application/atom+xml"/>
    <add enabled="true" mimeType="application/atom+xml;charset=utf-8"/>
  </dynamicTypes>
  <staticTypes>
    <clear />
    <add enabled="true" mimeType="text/*"/>
    <add enabled="true" mimeType="message/*"/>
    <add enabled="true" mimeType="application/javascript"/>
    <add enabled="true" mimeType="application/atom+xml"/>
    <add enabled="true" mimeType="application/xaml+xml"/>
    <add enabled="true" mimeType="application/json"/>
    <add enabled="false" mimeType="*/*"/>
  </staticTypes>
 </httpCompression>
[...]
</system.webServer>

[...]
azure门户似乎没有给我任何更改压缩的选项


要启用压缩,我需要做什么?还是只有在azure中使用Vserver时才可以?

您可以在web.config中更改此设置:

<system.webServer>
  <urlCompression doStaticCompression="true" doDynamicCompression="true" />
</system.webServer>

然后:



嗨,彼得,我用你提供的示例更改了web.config(更新了我的帖子)。我检查了结果,压缩不起作用。在system.webServer标记中添加httpCompression标记是否正确?上面的信息是正确的,但是它对我也不起作用,你有没有让它起作用?我相信上面的内容仅适用于网站我在Azure Web应用程序上遇到了相同的问题,使用了与你相同的配置,但它似乎不起作用。我把它放了一段时间,刷新了页面,它工作了。我想这可能是某个地方的缓存问题。我还从statictypes部分删除了application/json mime类型。我不希望服务器为我提供缓存版本,因为它们通常是从数据库获取的控制器操作的结果。你可以查看此链接了解更多信息,我有相同的问题,没有解决方案。
<httpCompression>
  <dynamicTypes>
    <clear />
    <add enabled="true"  mimeType="text/*"/>
    <add enabled="true"  mimeType="message/*"/>
    <add enabled="true"  mimeType="application/x-javascript"/>
    <add enabled="true"  mimeType="application/javascript"/>
    <add enabled="true"  mimeType="application/json"/>
    <add enabled="false" mimeType="*/*"/>
    <add enabled="true"  mimeType="application/atom+xml"/>
    <add enabled="true"  mimeType="application/atom+xml;charset=utf-8"/>
  </dynamicTypes>
  <staticTypes>
     <clear />
     <add enabled="true" mimeType="text/*"/>
     <add enabled="true" mimeType="message/*"/>
     <add enabled="true" mimeType="application/javascript"/>
     <add enabled="true" mimeType="application/atom+xml"/>
     <add enabled="true" mimeType="application/xaml+xml"/>
     <add enabled="true" mimeType="application/json"/>
     <add enabled="false" mimeType="*/*"/>
   </staticTypes>
 </httpCompression>