您可以在IIS 6中启用HTTP压缩而无需重新启动IIS吗?

时间:2008-11-06 21:10:24

标签: asp.net iis-6 http-compression

我目前正在优化我公司网站的效果;当需要6-10秒才能下载2MB以上的主页和资产(该网站主要是带有大量媒体的Flash,所以它不是2MB的HTML和viewstate)。为了降低这种下载大小,还有很多事情需要做;但我确实想做的一件事是启用HTTP压缩来压缩我们的静态内容,特别是XML,CSS和JS;我不认为压缩对SWF和JPG会有很大帮助。

我想在我们的暂存网站上启用此功能,以便进行一些服务器测试和基准测试。这意味着我将不得不进行一些Metabase编辑,因为IIS 6不允许您通过IIS管理器在单个站点上设置压缩。问题是,Metabase被IIS锁定,所以我无法保存;即使我保存了编辑内容,我也需要重新启动IIS才能使更改生效;这将取消托管在同一台服务器上的其他实时网站。无论如何在没有重新启动IIS的情况下为一个站点启用压缩?我不介意重新启动我们的暂存站点;我只是不希望这项工作取消服务器上的其他网站。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

您确实意识到IISRESET可能会在几秒钟内发生,并且它可以如此之快,以至于用户请求只会“挂起”直到服务器响应。

唯一不好的部分是,如果他们使用服务器会话,那些可能会丢失。

你应该启用HTTP压缩,这通常是一件好事,在今天的服务器中你很少使用任何大量的CPU使用,因此压缩HTTP输出的次要任务将比你在CPU时间中消耗更多带宽

我还应该提一下,无论是谁创建你的Flash文件都是错误的,flash开发人员需要流式传输闪存组件,而不是提供每一个图形,声音和放大器。第一页视图上的动画。没有理由任何Flash首页应该超过100k。

答案 1 :(得分:0)

您是否选中了“启用直接元数据库编辑”功能?如果是这样,您应该能够编辑元数据库,当文件保存时,IIS将自动获取大部分更改。More details here

您还可以使用adsutil.vbs启用压缩。有here的例子和this blog post的评论。

cscript C:\Inetpub\AdminScripts\adsutil.vbs set w3svc/site#/root/DoStaticCompression False
cscript C:\Inetpub\AdminScripts\adsutil.vbs set w3svc/site#/root/DoDynamicCompression False