在asp.net中设置gzip压缩

在asp.net中设置gzip压缩,asp.net,iis-7,gzip,Asp.net,Iis 7,Gzip,有没有办法在web.config级别设置gzip压缩,或者我只能在IIS管理控制台中执行此操作?是的,您可以使用web.config启用压缩,如下文所示-但这可能取决于服务器上的权限 您应该注意,动态压缩(在将ti发送到客户端之前需要处理的任何内容)会增加服务器上的负载,因为它必须对每个请求进行压缩 编辑:注意这是针对IIS7的(正如您所标记的)这里试试这个:将我的网站速度提高了大约400%。第一次尝试就成功了 尝试了几次,但如果在web.config中设置了这些设置,则压缩不起作用。如

有没有办法在web.config级别设置gzip压缩,或者我只能在IIS管理控制台中执行此操作?

是的,您可以使用web.config启用压缩,如下文所示-但这可能取决于服务器上的权限

您应该注意,动态压缩(在将ti发送到客户端之前需要处理的任何内容)会增加服务器上的负载,因为它必须对每个请求进行压缩



编辑:注意这是针对IIS7的(正如您所标记的)

这里试试这个:将我的网站速度提高了大约400%。第一次尝试就成功了



尝试了几次,但如果在web.config中设置了这些设置,则压缩不起作用。如果在applicationhost.config中设置了设置,则一切正常。我不喜欢在applicationhost.config中设置,但至少它可以正常工作。我的共享主机提供商使用Plesk管理我的权限,并使此解决方案也失败。我已经简单地解释了我在微软提出的更长的解决方案。但是,在安装gzip压缩时,默认情况下,这似乎已经设置好了,因此这一步应该是不必要的,并且它只缩小了js等内容,而不是ASP.Net pages.HTML的HTML。即使在上述设置被证明是这个模糊设置的错误之后,也不进行gzip:如果Javascript没有压缩,请尝试MIME类型改为“application/x-javascript”。由于某些原因,此更改的可能副本将是gzip js和css,但不是来自ASP.Net的实际HTML输出。您可能认为将动态内容压缩设置为enabled会起到作用,但在我的测试中,它不会起作用。
<system.webServer>
  <httpCompression directory="%SystemDrive%\inetpub\
temp\IIS Temporary Compressed Files">
    <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll"/>
    <dynamicTypes>
      <add mimeType="text/*" enabled="true"/>
      <add mimeType="message/*" enabled="true"/>
      <add mimeType="application/javascript" enabled="true"/>
      <add mimeType="*/*" enabled="false"/>
    </dynamicTypes>
    <staticTypes>
      <add mimeType="text/*" enabled="true"/>
      <add mimeType="message/*" enabled="true"/>
      <add mimeType="application/javascript" enabled="true"/>
      <add mimeType="*/*" enabled="false"/>
    </staticTypes>
  </httpCompression>
  <urlCompression doStaticCompression="true" doDynamicCompression="true"/>
</system.webServer>