GZip压缩,是一种网站速度优化技术,也是一把SEO优化利器,许多网站都采用了这种技术,以达到提升网页打开速度、缩短网页打开时间的目的。

本文是一篇研究性文章,将通过某个案例来给大家显示网站采用GZip压缩前后的对比效果。

这里将要研究的对象是园子的博客http://www.yzznl.cn/,该博客已经采用了GZip压缩技术。你可以通过这里进行GZip压缩检测。

下面将要进行的实验是该网站在采用与不采用GZip压缩的情况下网页打开的速度和时间的比较。

选择的测试工具是webkaka网站测速工具,webkaka的老用户请注意了,webkaka网站测速已经新增了网站是否启用GZip压缩的判断。可以使用Gzip压缩打开网页和不使用Gzip压缩打开网页两种方式进行测试网页打开速度。

一、不使用Gzip压缩打开网页

首先要测试的是不通过Gzip压缩的情况下,直接打开网页。测速地址:http://www.webkaka.com/webCheck_v3.aspx

如下是测试结果

从上图可以看到,网页大小是50275字节,没有经过Gzip压缩,平均打开时间是5.128秒,而满意度得分仅得59分(什么是满意度得分?)。

二、使用Gzip压缩打开网页

现在测试的是在使用Gzip压缩的情况下,打开网页。测速地址:http://www.webkaka.com/webCheck.aspx

如下是测试结果

从上图可以看到,网页大小是12187字节,是已经经过Gzip压缩后的体积。平均打开时间是1.820秒,打开时间比没有使用Gzip时缩短了2/3。而满意度得分达到了91分之高。

总结

通过上面两组数据的对比,Gzip压缩优化的效果是十分明显的。也正因为有效果,所以大部分网站都使用了该项技术进行速度优化。如果你的网站速度不够理想,而你还未采用这种优化技术的话,那么,赶快行动吧,使用Gzip压缩会让你的网站速度提升3倍以上!

实际上,网站采用Gzip压缩,还有一个好处,就是让你少了一份流量超标的担心。因为Gzip开启以后会将输出到用户浏览器的数据进行压缩的处理,这样就会减小通过网络传输的数据量,而这个,也正是提升网页打开时间的原因所在。

相关知识

如何启用IIS的Gzip压缩功能

首先,如果你需要压缩静态文件(HTML),需要在硬盘上建一个目录,并给它“IUSR_机器名”这个用户的写权限。如果压缩动态文件(PHP,asp,aspx)就不需要了,因为它的页面是每次都动态生成的,压缩完就放弃。

然后在IIS管理器中,“网站”上面右键-属性,不是下面的某个站点,而是整个网站。进入“服务”标签,选上启用动态内容压缩,静态内容压缩。然后选中网站下面那个服务器扩展,新建一个服务器扩展。名字无所谓,下面的添加文件的路径是: c:\windows\system32\inetsrv\gzip.dll,然后启用这个扩展。

这时候静态内容是可以压缩的,但是对于动态内容,aspx文件却不在压缩范围内。因为默认的可压缩文件并没有这个扩展名。而管理界面中你又找不到可以增加扩展名的地方,这时候只能去修改它的配置文件了。在c:\windows\system32\inetsrv\下面有个MetaBase.xml文件,可以用记事本打开,找到IIsCompressionScheme,有三个相同名字的段,分别是deflate,gzip,Parameters,第三段不用管它,前两段有基本相同的参数,在这两段的参数HcScriptFileExtensions下面都加上一行aspx,如果你有其它的动态程序要压缩,也加在这里。HcDynamicCompressionLevel改成9,(0-10,9是性价比最高的一个)。

最后需要注意的是,不要忘了重启一下IIS服务。

nginx 配置 gzip压缩

默认情况下,Nginx的gzip压缩是关闭的,也只对只对text/html进行压缩,需要在编辑nginx.conf文件,在http段加入一下配置,常用配置片段如下:

gzip    on;
      gzip_comp_level  6;    # 压缩比例,比例越大,压缩时间越长。默认是1
      gzip_types    text/xml text/plain text/css application/javascript application/x-javascript application/rss+xml;     # 哪些文件可以被压缩
      gzip_disable    "MSIE [1-6]\.";     # IE6无效

启用apache2的gzip功能

apache2官方在开发的时候,就已经把网页压缩考虑进去,内建了mod_deflate模块,所以apache2就不需要使用到mod_gzip了,这两者的工作原理是类似的, 还有启用mod_deflate这个网页压缩的模块,功能和效率和mod_gzip是差不多的,甚至还好一些,就不需要再用mod_gzip模块了。

配置文件实例:

<ifmodule mod_deflate.c>
      DeflateCompressionLevel 9
      AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php
      AddOutputFilter DEFLATE js css
      </ifmodule>

lighttpd配置gzip

配置gzip主要是使用compress模块
      1. 激活compress模块,将lightppd.conf文件的mod_compress的注释去掉
      2. 配置压缩文件存放目录compress.cache-dir,注意运行lighttpd的用户需要有这个目录的读写权限,压缩文件的类型compress.filetype
      3. 将动态生成的php也gzip,修改php.ini,加上zlib.output_compression = On和zlib.output_handler = On
      4. 重启lighttpd

配置文件实例:

compress.cache-dir  =  "/home/flymouse/lighttpd/compress/"
      compress.filetype  =  ("text/plain", "text/html", "application/x-javascript", "text/css", "application/javascript", "text/javascript")

网站启用GZip压缩后,速度快了3倍!相关推荐

  1. 启用Gzip压缩(IIS)提高客户端网站访问速度

    IIS上启用Gzip压缩(HTTP压缩) 详解 一.摘要 本文总结了如何为使用IIS托管的网站启用Gzip压缩, 从而减少网页网络传输大小, 提高用户显示页面的速度. 二.前言. 本文的知识点是从互联 ...

  2. 在IIS上启用Gzip压缩 (HTTP压缩)方法

    本文总结了如何为使用IIS托管的网站启用Gzip压缩, 从而减少网页网络传输大小, 提高用户显示页面的速度. 一.摘要 本文总结了如何为使用IIS托管的网站启用Gzip压缩, 从而减少网页网络传输大小 ...

  3. 更改web.config,让godady的win主机启用gzip压缩

    阅读本文首先确定你正在使用或者准备使用godaddy的windows虚拟主机,当然也会适合别的windows主机,同时,请确定你的虚拟主机的iis模式是7而不是6,因为godaddy同时还支持iis6 ...

  4. Nginx 启用 gzip 压缩

      Gzip是若干种文件压缩程序的简称,通常指GNU计划的实现,此处的 gzip 代表GNU zip.也经常用来表示 gzip 这种文件格式. 什么是 Gzip ? Gzip是若干种文件压缩程序的简称 ...

  5. 在IIS中使用Gzip压缩后传送数据

      使用Gzip压缩会增大服务器CPU的使用率但可以通过压缩而减少服务器向客户端发送的数据 ,若使用了Gzip压缩IIS在向客户端发送数据时会自动检测,如果客户端浏览器支持 IE6.0,firefox ...

  6. feign 启用gzip压缩

    目录 1.项目中启用gzip压缩 2.在feign 服务提供方开启http压缩(很重要) 3.启用httpclient 4.还有一点很容易忽略的,引入httpclient jar包,同时注意和open ...

  7. Node.js服务器启用Gzip压缩

    Gzip是什么 复制大神们的解释吧: GZIP最早由Jean-loup Gailly和Mark Adler创建,用于UNIX系统的文件压缩.我们在Linux中经常会用到后缀为.gz的文件,它们就是GZ ...

  8. apache启用gzip压缩方法

    一.gzip介绍 Gzip是一种流行的文件压缩算法,现在的应用十分广泛,尤其是在Linux平台.当应用Gzip压缩到一个纯文本文件时,效果是非常明显的,大约可以减少70%以上的文件大小.这取决于文件中 ...

  9. apache 启用 gzip压缩

    一.gzip介绍 Gzip是一种流行的文件压缩算法,现在的应用十分广泛,尤其是在Linux平台.当应用Gzip压缩到一个纯文本文件时,效果是非常明显的,大约可以减少70%以上的文件大小.这取决于文件中 ...

最新文章

  1. 谷歌将比特币现金汇率纳入货币信息搜索
  2. [译] 制定良好的路线图:产品负责人的六个实施步骤
  3. spring-boot项目打包时候出现boot-inf文件夹的问题
  4. ueditor百度编辑器常见报错的解决方法
  5. Android onTouchEvent, onClick及onLongClick的调用机制
  6. 配置通过Apache(httpd)访问Subversion(SVN)1.7资源库
  7. nvidia-smi:Failed to initialize NVML: Driver/library version mismatch
  8. xshell可以连接上linux,但是xftp却连不上问题
  9. 无浮动IP的虚机出公网流量路径
  10. centos7 mysql5.7.2_Install mysql5.7 on centos7.2
  11. windows 安装 docker destop
  12. 电脑双系统完美卸载Ubuntu
  13. 0055-在OpenCV环境下合成高动态范围图像(HDR)
  14. 按钮样式动态切换js
  15. 如果可能,与孤独为友!
  16. Permission is only granted to system apps解决方法
  17. 不同网络情况的安防摄像头如何通过手机进行直播?
  18. 什么是微隔离?它的作用是什么?
  19. 网站关键词排名优化怎么做才能让排名更高?
  20. go学习笔记之bufio的使用

热门文章

  1. LINUX挂载共享盘
  2. MySQL#复制 双Yes的假死故障造成主从不一致
  3. echarts--设置图表背景网格线
  4. Ant Design 表格:循环展示表头,表头添加图标icon
  5. java对象数组赋值
  6. 盘古开源:构建“1468”发展体系,推动“十四五”大数据产业创新发展
  7. 【数据结构与算法】狼、羊、菜和农夫过河:使用图的广度优先遍历实现
  8. 【链塔DApp日报】BDI指数增长17%,以太坊 24h交易额增长18%
  9. Federated Averaging算法
  10. python配置文件(ini文件)