http压缩应该是在网站--〉属性--〉服务中设置,可是我的iis却没有服务,是不是要额外装什么东西,或需要什么设置?
解决方案 »
- 业务层是否应该出现System.Web.HttpContext.Current的引用呢?迷茫中
- asp.net中 如何在后台读取服务器上的word文档 或者excl文档
- CSDN论坛的资料多久更新一次?
- 各位大虾, 帮看看这是用什么语言开发出来的网站?
- <script runat="server" language="cs">和页面语言冲突怎么解决?
- asp.net网站开发
- 寻一个Forms验证的例子,有多个角色的,如(管理员,审核员)它们有不同的权限
- 提问:如何在.cs里让checkbox不能编辑?
- 关于服务器控件与HTML控件的使用那一种更好??
- 在EXCEL中怎样限制用户只能在某一单元格(如B11)输入,而不能编辑其它单元格的内容
- ajax数据加载(带加载图片)如何实现?有没有例子?
- 母版页主要用在什么地方
iis6启动HTTP压缩的方法
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"后,即可保存;或者命令行下:net stop iisadmin.启动用net start w3svc.
5) 最后,重新启动IIS。可以到HTTP压缩测试网站:http://www.port80software.com/support/p80tools
验证结果。注意验证的时候,验证三次:一次只输入域名。一次输入你的静态文件名,一次输入你的动态文件名。三次都显示为:Compression status: Compressed (gzip),即为成功。
可是我在配置了HTTP 压缩之后发现,当URL地址中不包含文件名时,压缩就会失效,比如访问http://www.cnblogs.com ,就没有进行压缩,而且访问http://www.cnblogs.com/default.aspx, 压缩就生效。IIS 6中的HTTP压缩是根据MetaBase.xml中的HcScriptFileExtensions定义的扩展名进行匹配的,IIS 6在检查匹配时,对于不含文件名的URL, 没有先加上默认文档名进行匹配,所以引起了这个问题。我采用的解决方法是将HcScriptFileExtensions的值设为空,对任何文件进行压缩。