iis+win2003 gzip压缩教程

先来了解一下GZIP,gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序,也经常用来表示gzip这种文件格式。软件的作者是Jean-loupGailly和Mark Adler。gzip可以极大的加速网站。有时压缩比率高到80%,近来测试了一下,最少都有40%以上,还是相当不错的。在Apache2之后的版本,模块名不叫gzip,而叫mod_deflate。IIS6默认情况下没有开启GZIP功能,需要我们手动配置。

1. 在 “IIS 管理器” 中,打开 “网站 》属性” 对话框,切换到 “服务” 页卡,选中两个压缩选项。

2. 新增一个服务扩展,路径为 “%windir%\System32\inetsrv\gzip.dll”。添加完成后,允许该扩展使用。

3. 在 “管理工具 》服务” 中,停止 “IIS Admin Service”。

4.用记事本打开 “%windir%\system32\inetsrv\MetaBase.xml”,找到 “IIsCompressionScheme”,按下述方法修改、保存。(建议修改前先做备份) 如果需要压缩动态文件,则将 HcDoDynamicCompression设置为“TRUE”,并在HcScriptFileExtensions中增加您要压缩的动态文件后缀名,如aspx (由于我要优化的系统中,做了 html -》 aspx 的 URL Rewrite,所以将 html、htm 也加入了)。

如果需要压缩静态文件,则将HcDoStaticCompression和HcDoOnDemandCompression设置为 “TRUE”,并在HcFileExtensions中增加您需要压缩的静态文件后缀名,如xml、css等。

HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的压缩率,数字(0~9)越小压缩率越低。

IIS使用10则

1. 自定义错误页 虽然自定义错误页很简单,但只有少数管理员有效地利用了它。管理员可以在MMC中将HTTP错误信息映射到服务器上的绝对URL或是某个文件,更为详细的信息可以在这里找到。如果你嫌这太麻烦,想要更简单的方法,或者你希望开发者自己定义错误页,同时又不想让他们具有使用MMC的权限,你可以使用类似Customer Error 这样的工具。
2. MetaBase研究
如果你认为Apache功能强大是因为它有一个配置文件,那么你应该看一看IIS的MetaBase有多棒。使用MetaBase,管理员可以完成关于IIS的所有工作,例如,建立一个虚拟目录;停止、启动或暂停Web站点;建立、删除、禁止或启用应用程序。微软提供了一个可视化工具MetaEdit帮助你读写MetaBase,你可以在这里下载它的最新版本。为了更有效地利用MetaBase,你应该试一下命令行界面—IIS Administration Script,简称为adsutil.vbs,你可以在C:\inetpub\adminscripts或者%SystemRoot%\system32\inetsrv\adminsamples目录下找到它。
注意:MetaBase对Web站点的正常工作非常重要,千万不要破坏它。切记:做任何修改前必须先备份。
3. 自动纠正URL的拼写错误
Apache的拥护者总是在吹嘘Apache的一些小功能,其中最酷的就数“自动纠正URL拼写错误”了,现在,IIS管理员也可以把玩这些小功能了,使用URLSpellCheck,自动纠正URL拼写错误小菜一碟。
4. 重写URLs
Apache的拥护者一直就吹嘘mod_rewrite的强大功能,现在,用于IIS的这类产品有一打那么多,很多比mod_rewrite要好用,因为使用mod_rewrite,你必须熟悉正则表达式。试一下:IISWrite或ISAPI rewrite。
5. 探测浏览器
假设浏览站点的每一个人都使用同一种浏览器或屏幕大小都一样显然是很愚蠢的,你可以使用javascript可以对访问者的浏览器进行检测。如果你使用的是IIS的话,你将会有更好的选择—Cyscape公司的BrowserHawk,Apache世界里没有与它相比较的产品。Cyscape公司最近推出了一款新产品叫CuntryHawk,它可以用于探测访问者所在的区域(国家)。很可惜,至今我还没有语言敏感或者区域敏感的内容需要使用它。
6. 站点内容压缩
IIS 5有一个内置的压缩功能,可说实在话,它简直就糟透了,使用pipeboost吧。
7. Web应用程序缓存
你可以为不同的文件或目录设置过期时间,打开IIS信息服务器,右击站点内容,单击属性,在跳出来的窗体中你就可以进行相应的设置了。如果你想让开发者自己设置,请使用CacheRight 、XCache这些软件。
有效地利用缓存是要花费一些时间和钱的,但当你看到访问量攀升,可站点日记因为没有数不清的304响应而变得很小,带宽流量也大大下降时,你就会体会到为什么必须这样做了。设置了良好缓存的站点不多,相反,关于它的好处的文章在网上却多如牛毛,去看一看这些:Brian Davidson’s page,Mark Nottingham,和 what AOL has to say 。
8. 调谐服务器
调谐服务器不是一个小题目,需要一本专著来说明它。在网上有一些很好的基础教程和帮助,比如Brett Hill和微软自己的Knowledge Base article 。当然,如果你不想花这些时间的话,用这个–XTune。
9. 加强站点的安全
现在攻击站点的人可真不少,但只要你愿意付出一点点的努力,你就不会是一个只会坐着挨打的傻瓜。找出你的服务器信息和操作系统信息是攻击者的第一个目标,所以,首先,不要暴露你的HTTP头让别人知道你运行的是IIS,使用 ServerMask这类软件将HTTP头删除或替换掉。其次,你可以通过删除不必要的文件扩展名来进一步伪装你的服务器环境。另外,你还可以扫描有问题的URL请求,微软为你提供了一个免费工具–URLScan。
10. 补丁,补丁,补丁!

2010年Web服务器排名

在分析各个Web服务器之前,我们先来看看2010年Web的变化,下面是来自Netcraft的几个关键的调查数据:

截止2010年底,互联网上有2.55亿站点;
对比2009年,增长了9%,增加了2140万个站点。
Web持续的快速增长,这将可能是个超过3000万或是更高的数字,如果不是去年的统计数据里面包括的QQ的博客。

2010年Web服务器增长
Web服务器的使用率的变化,如下:

Apache 2009年托管1.09亿个站点,而2010年数字变成了1.52亿。
Net result: 2010年,增加大约4300万新的Apache网站。
Microsoft IIS 2009年托管4900万个站点,2010年是5700万。
Net result: 2010年,大约新增800万个IIS网站。
Nginx 没有2009年风光了,从1620万,增加到2010年的1690万。
Google’s web server (最初服务博客) 从1410万,增加到2010年的1490万。
Lighttpd 从84万,增加到130万。

2010年市场变化
根据上述数据,下面是2010年的市场份额变化:

Apache 从46.6%到59.4%,收获12.8%。
Microsoft IIS 从21.0%到22.2%,收获1.2%。
Nginx 从6.6%到7.0%。
Google’s web server 从6.0%到5.9%。
Lighttpd 从0.4%到0.5%。

IIS 6.0 中配置 HTTP Gzip 压缩

一. HTTP压缩概述

HTTP压缩是在Web服务器 和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如gzip等压缩HTML、JavaScript或 CSS文件。压缩的最大好处就是降低了网络传输的数据量,从而提高客户端浏览器的访问速度。当然,同时也会增加一点点服务器的负担。Gzip是比较常见的 一种HTTP压缩算法。

本文介绍的HTTP压缩方式,采用的是Windows系统设置的方式,优点是效率较高。

二. HTTP压缩工作原理

Web服务器处理HTTP压缩的工作原理如下:

Web服务器接收到浏览器的HTTP请求后,检查浏览器是否支持HTTP压缩;

如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名;

如果请求文件是HTML、CSS等静态文件,Web服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件;

如果请求文件的压缩文件不存在,Web服务器向浏览器返回未压缩的请求文件,并在压缩缓冲目录中存放请求文件的压缩文件;

如果请求文件的最新压缩文件已经存在,则直接返回请求文件的压缩文件;

如果请求文件是ASPX等动态文件,Web服务器动态压缩内容并返回浏览器,压缩内容不存放到压缩缓存目录中。

三. IIS 6.0中配置HTTP Gzip压缩的步骤:

1) 打开Internet信息服务(IIS)管理器,右击”网站”->”属性”,选择”服务”。在”HTTP压缩”框中选中”压缩应用程序文件”和”压缩静态文件”,按需要设置”临时目录”和”临时目录的最大限制”;

2) 在Internet信息服务(IIS)管理器,右击”Web服务扩展”->”增加一个新的Web服务扩展…”,在”新建Web服务扩展”框中输 入扩展名”HTTPCompression”,添加”要求的文件”为C:\WINDOWS\system32\inetsrv\gzip.dll,其中 Windows系统目录根据您的安装可能有所不同,选中”设置扩展状态为允许”;

3) 使用文本编辑器打开C:\Windows\System32\inetsrv\MetaBase.xml(建议先备份),找到Location =”/LM/W3SVC/Filters/Compression/gzip”,如果需要压缩动态文件,则将 HcDoDynamicCompression设置为”TRUE”,并在HcScriptFileExtensions中增加您要压缩的动态文件后缀名, 如aspx;如果需要压缩静态文件,则将HcDoStaticCompression和HcDoOnDemandCompression设置为 “TRUE”,并在HcFileExtensions中增加您需要压缩的静态文件后缀名,如xml、css等; HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的压缩率,数字越小压缩率越低;

4) 编辑完毕后保存MetaBase.xml文件;如果文件无法保存,则可能IIS正在使用该文件。打开”开始”->”管理工具”->”服务”,停止”IIS Admin Service”后,即可保存;

5) 最后,重新启动IIS。可以到HTTP压缩测试网站验证结果。

windows2003 IIS卸载无法在安装的解决办法

 Windows2003的IIS一旦卸载,就安装不上了,提示是找不到安装文件。我就纳闷了,明明文件是存在的,怎么会提示找不到文件,简直郁闷死个人。今天在网上搜索了老长时间,终于找到了解决的办法:
  在安装IIS时,总是提示无法复制安装文件,导致无法安装IIS
  其原因是系统的secedit.sdb文件损坏

  解决办法:
  开始 > 运行 > 输入 CMD >再输入以下命令:
  esentutl /p %windir%/security/database/secedit.sdb