IIS7配置Gzip压缩
开启配置HTTP压缩(GZip)
在IIS7中配置Gzip压缩相比IIS6来说实在容易了许多,而且默认情况下就是启用GZip压缩的。如果没有,则可以再功能视图下找到“压缩”项,进入之后就会看到“静态内容压缩”和“动态内容压缩”两个选项,勾上即可。
配置启用压缩的文件类型及其他选项
当开启GZip压缩之后,IIS并不是对所有内容都启用了压缩,而是有选择的进行压缩。遗憾的是,我们无法直接在IIS7管理器中配置这些压缩选项。我们首先需要在C:\Windows\System32\inetsrv\config文件夹下找到applicationhost.config文件,打开之后找到如下一节内容:
<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/x-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>
我们可以看到,IIS实际上是根据MIME类型来决定是否启用HTTP压缩的,以及压缩比之类的选项。可以看出,图片默认情况下是不被压缩的,这是因为图片的压缩比太低了。
我们注意到,对于Javascript来说,上面对不同的mime类型配置了不同的压缩方式。Javascript有三种常见的Mime类型,text/javascript,application/x-javascript,application/javascript。这三种类型都是合法的,在现代浏览器中也不存在什么差别。但是由于IIS7中Js文件的mime类型默认被设置为application/x-javascript,也就是说对于js文件,使用的是动态内容压缩而不是静态内容压缩,因此会导致js文件有时经过压缩的,有时却没有压缩。
由于js文件通常稳定之后不会再被修改了,因此建议改成静态压缩——即把dynamicTypes这一节中的application/x-javascript挪到静态压缩节中。这样保证每次脚本都是被压缩过返回的。
静态压缩及动态压缩的区别
IIS7中的HTTP压缩分为“静态内容压缩”和“动态内容压缩”,其实这两个名字第一次接触很费解。什么是动态内容什么又是静态内容?实际上,准确的翻译应该是“静态压缩”和“动态压缩”。这两个词反应了IIS的压缩行为。对于配置在staticTypes节中的mime类型,将会启用静态压缩,也就是说,当文件第一次被请求的时候,IIS会将其压缩,然后放入临时文件夹中,下次再有人请求此文件时直接从临时文件夹中取出压缩后的版本而不用重新执行压缩的过程。配置在dynamicTypes一节中的mime类型的http请求都将启用动态压缩,即每一次请求,主机都会对请求的内容——可能是存放在文件系统中的静态文件,也可能是ISAPI返回的内容——进行压缩,而不会对其进行缓存。这个压缩比率因主机性能不同而会有所调整,所以我们在请求js文件的时候才会发现js文件有时压缩有时不压缩的情况。
显而易见,静态压缩会占用一定的存储空间,但是速度快,而动态压缩不占用存储空间,但是占用CPU时间,而且压缩比不恒定。而对于经过ISAPI的请求,则不能使用静态压缩方式。例如对于WCF返回的内容。
更详细的情况参见这篇文章:Using HTTP Compression for Faster Downloads.
转载于:https://www.cnblogs.com/visense/p/3203654.html
IIS7配置Gzip压缩相关推荐
- IIS配置Gzip压缩,提升访问性能
1.概述 IIS是基于Http协议进行数据传输的,我发现在项目中大概使用Get/Post返回Json,而Json并没有使用压缩. 如下图,响应的头部,也就是说IIS是可以支持Compression的. ...
- vite配置gzip压缩
vite配置gzip压缩 前段时间由于贫穷,用了家里的电脑做服务器,白嫖了同事的frp,映射到同事的服务器,达到可以公网访问的目的,预感到frp相对会慢一点点,没想到这么慢 ,发现vite打包后的部分 ...
- IIS7启动gzip压缩
1.打开C:\Windows\System32\inetsrv\config文件夹下找到applicationhost.config文件 找到节点httpCompression 增加子节点 <a ...
- Apache开启GZIP压缩功能方法
Gzip是一种流行的文件压缩算法,现在的应用十分广泛,尤其是在Linux平台,本文讲解了如何开启Apache平台上的Gzip压缩功能 Gzip是一种流行的文件压缩算法,现在的应用十分广泛,尤其是在Li ...
- Java Web应用实现GZIP压缩传输
本篇介绍Java Web 应用如何配置GZIP压缩以提高js , css 等文件的传送速度, 加快网页的展现速度. 实现方式选择 直接压缩文件, 比如将js文件通过gzip 工具压缩成 .gzjs 的 ...
- web服务器配置gzip压缩
什么是gzip压缩 HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术.大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度.这一般是指WWW服务器中安装的一个功能,当有人 ...
- Tomcat启用GZIP压缩,提升web性能
一.前言 最近做了个项目,遇到这么一个问题:服务器返回给客户端的json数据量太大(大概65M),在客户端加载了1分多钟才渲染完毕(当然这加载时间也和本地的下行带宽有关),费时耗流量,用户体验极其不好 ...
- 性能优化实践:快速开启 Gzip 压缩
概念初探 Gzip,全称为 GNU zip,是一种无损压缩文件的算法.其底采用的是 DEFLATE,而 DEFLATE 是 LZ77 与 哈夫曼编码 的一个组合体. 通常来说,"Gzip 压 ...
- 网站启用GZip压缩后,速度快了3倍!
GZip压缩,是一种网站速度优化技术,也是一把SEO优化利器,许多网站都采用了这种技术,以达到提升网页打开速度.缩短网页打开时间的目的. 本文是一篇研究性文章,将通过某个案例来给大家显示网站采用GZi ...
- 如何使用gzip压缩加快页面显示速度
1.首先我们通过npm命令安装好需要使用的依赖包 npm install --save-dev compression-webpack-plugin 2.安装成功了之后我们需要在vue.config. ...
最新文章
- 【笔记】web语音相关
- 广度优先搜索 BFS算法
- Html 教程 (6)script标签
- 求序列中第k小的数_无理数的整数部分与小数部分
- 蛋白质合成有关的分子生物学知识问答
- Unity3D Shader入门指南(二)
- Flutter实战视频-移动电商-45.详细页_说明区域UI编写
- 解决方案:OpenResty 网站首页数据缓存
- 贴一段Jenkins的自动发布脚本
- c语言调用子程序,哪位师傅知道51单片机怎样编写子程序?C语言的。在主程序里调...
- java maxheap_Java底层PriorityQueue 优先队列——基于MaxHeap最大堆
- 艰苦的编译boost python (失败)
- Mysql server has gone away
- HDU4578 Transformation(多标记线段树)题解
- Tensorflow基于mnist数据集实现AlexNet
- Linux命令行截屏,Scrot:Linux 命令行截屏工具
- N卡A卡流处理器的区别解析
- 静默安装apk,静默卸载apk
- 2D Game Creation - 2D游戏开发基本流程
- 使用CSS3开启GPU硬件加速提升网站动画渲染性能