IIS 7压缩不起作用

7
我有一个安装了IIS 7的Windows Server 2008 R2服务器。
默认情况下,在IIS中创建站点时,压缩是启用的。我检查了压缩模块并选中了两个复选框。
现在,我正在使用Fiddler检查页面是否被压缩,但是似乎页面没有被压缩,因为“未压缩”被选中,并且页面大小超过100 KB。
尽管在IIS 7中启用了压缩,但为什么页面没有被压缩?
希望能得到任何建议。
谢谢。
3个回答

17

你的网页内容是否是动态的(即.aspx或.php文件)?如果是,你的IIS是否安装了动态内容压缩模块?你可以查看“启用动态内容压缩”复选框来判断。如果该复选框是灰色的,则未安装。

要安装它,请参考以下链接:

在Windows Server 2008上启用IIS7中的动态HTTP压缩

简而言之(伴随着许多图片),它说您必须通过服务器管理器添加动态内容压缩角色服务,然后确保在IIS管理器中启用它。


5
我想到了一个解决方案 :-) 这个解决方案总是提供压缩版本。 对于我来说,在IIS 7.5 Manager中,我已经勾选了两个框,以便同时压缩: - 静态文件 - 动态文件
有时(第一次提供网页时),它是未压缩的。然后,只有第二次,它才被压缩。
以下解决方案来自这里: http://www.codeproject.com/Articles/242133/Making-the-most-out-of-IIS-compression-Part-conf 为了让IIS始终缓存压缩版本而不是未压缩版本,请修改applicationHost.config文件。您通常会在文件夹C:\Windows\System32\inetsrv\config中找到此文件。
  1. 备份applicationHost.config文件。
  2. 使用文本编辑器打开applicationHost.config文件,或者在IIS Manager中导航到“默认网站”>“配置编辑器”,然后转到“system.webServer/urlCompression”部分。
  3. 找到urlCompression元素。
  4. dynamicCompressionBeforeCache="true"属性添加到urlCompression元素中,
  5. 折叠|复制代码

  6. 保存applicationHost.config文件。
  7. 重置IIS服务器以使新属性生效。
  8. 启动IIS Manager,单击树的顶部的服务器,然后在右侧单击“重启”。

希望这能节省你的时间,就像它曾经为我所做的一样!


1
我们遇到了相同的问题,但是我们使用的是IIS8。关闭动态和静态压缩就解决了问题,但在更改设置后需要重新启动IIS。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接