为什么要开启GZIP

我们需要下载一个100KB的Javascript文件,正常的下载量就是100KB,如果我们把文件在服务端压缩一下,压缩成30kb,下载到客户端再进行解压,这样就减少了大量的HTTP的传输时间,这就是GZIP的作用。

如何开启服务器的GZIP

我们以windows版的Apache2.4为例,打开httpd.conf文件,因为开启GZIP需要mod_deflate.so,所以首先把解注mod_deflate.so,然后增加下面的配置项:

#开启GZIP

<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
# example of how to compress ONLY html, plain text and xml
# AddOutputFilterByType DEFLATE text/plain text/html text/xml
# Don't compress binaries
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|iso|tar|bz2|sit|rar) no-gzip dont-vary
# Don't compress images
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|jpg|ico|png) no-gzip dont-vary
# Don't compress PDFs
SetEnvIfNoCase Request_URI .pdf no-gzip dont-vary
# Don't compress flash files (only relevant if you host your own videos)
SetEnvIfNoCase Request_URI .flv no-gzip dont-vary
# Netscape 4.X has some problems
BrowserMatch ^Mozilla/4 gzip-only-text/html
# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4.0[678] no-gzip
# MSIE masquerades as Netscape, but it is fine
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
# Setup custom deflate log
DeflateFilterNote Input instr
DeflateFilterNote Output outstr
DeflateFilterNote Ratio ratio
LogFormat '"%r" %{outstr}n/%{instr}n %{ratio}n%%' DEFLATE
CustomLog logs/deflate_log DEFLATE
</IfModule>

重启Apache,配置生效!

对比测试

我们以jquery-1.7.1.js为例,在不开启GZIP和开启GZIP下的文件大小进行对比

1.开启GZIP,文件传输大小为32.7KB

2.未开启GZIP,文件的传输大小为92.0KB,即文件的实际大小

最新文章

  1. [ubuntu]用ubuntu开发的日子----win7 ubuntu双系统
  2. 【摘】crontab 各时间含义
  3. HighCharts学习笔记(一)HighCharts入门
  4. VMWare联网
  5. new Date()时间对象
  6. EL表达式取整数或者取固定小数位数的简单实现
  7. POJ 2217 Secretary (后缀数组)
  8. MySQL之GROUP BY用法误解
  9. ubuntu安装nVidia驱动,遇到终端闪砾问题并解决
  10. 错误号码2003 Can&#39;t connect to MySQL server &#39;localhost&#39; (0)
  11. 深度学习笔记(七)SSD 论文阅读笔记简化
  12. Windows x64汇编函数调用约定
  13. [ Build Tools ] Repositories
  14. Python fcntl 与 signal 模块使用
  15. spring与mybatis四种整合方法
  16. PCA原理解释(二)
  17. Java数组扩展
  18. github删除仓库
  19. 【LOJ】#2445. 「NOI2011」道路修建
  20. 479. Largest Palindrome Product

热门文章

  1. java代码随机数组合,随机号码产生器
  2. MySQL导入MongoDB
  3. JCTF 2014(Reverse)
  4. CreateRemoteThread 远程dll注入
  5. C#在线预览文档(word,excel,pdf,txt,png)
  6. x264的一些参数设置对编码效率的影响
  7. Android Fragment用法详解(2)--动态添加Fragment
  8. Android 自定义Camera 随笔
  9. ORACLE体系结构一 (物理结构)- 数据文件、日志文件、控制文件和参数文件
  10. PL/SQL批处理语句(一)BULK COLLECT