转自: http://blog.soluo.info/archives/28.html 今晚才发现ckeditor又有新版本放出了,于是上官网下了下来,顺便点进它的官方demo页面逛了圈,demo加载还是一样的很快,比我博客上用的快 多了,很好奇官方demo是不是也用那个260多k的ckeditor.js,于是打开firefox的firebug插件,通过其网络功能观察了下,显 示ckeditor.js只有83K,但通过访问其链接把js下到本地,却还是267K,原来是在服务器压缩了!我知道服务器能把文本内容压缩后再推送到 客户端,但还是没想到能压缩到这个程度。心动了,于是上网google了下,把我的服务器(用的是tomcat6.20)也开启了gzip压缩功能,其间 也收集到一些资料,在这里跟大家共享之。 gzip压缩是很多服务器软件,如Apache,nginx,IIS等的标准配置。gzip更是绝大多数客户端浏览器支持的基本功能。 开启gzip功能,会占用一定服务器的CPU。同时gzip的对象是一些文本格式的文件,如html、htm、css、js等。大家用过WinZip或 WinRAR的话,对一个Word文档压缩不了多少,但对一些文本文件的压缩率应该很大的,一般能达到30%左右,zip优化网站就是这个原理。二. HTTP压缩工作原理 Web服务器处理HTTP压缩的工作原理如下: 1. Web服务器接收到浏览器的HTTP请求后,检查浏览器是否支持HTTP压缩; 2. 如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名; 3. 如果请求文件是HTML、CSS等静态文件,Web服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件; 4. 如果请求文件的压缩文件不存在,Web服务器向浏览器返回未压缩的请求文件,并在压缩缓冲目录中存放请求文件的压缩文件; 5. 如果请求文件的最新压缩文件已经存在,则直接返回请求文件的压缩文件; 6. 如果请求文件是动态文件,Web服务器动态压缩内容并返回浏览器,压缩内容不存放到压缩缓存目录中。 下面以2个图片来加深理解: 1. 没使用gzip: 2. 使用gzip后: 三、tomcat服务器开启gzip功能的方法 tomcat5.0以后的版本是支持对输出内容进行gzip格式的压缩的。该功能默认是关闭的,如果需要启用该功能,我们需要修改tomcat的配置文件 server.xml,修改的方法是在server.xml的节点
下面是跟gzip功能有关属性的说明: compression="on" 打开压缩功能 compressionMinSize="2048" // 启用压缩的输出内容大小,这里面默认为2KB noCompressionUserAgents="gozilla, traviata" // 对于以下的浏览器,不启用压缩 compressableMimeType="text/html,text/xml" //压缩文本类型,多个用,隔开 compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla, traviata" compressableMimeType="text/html,text/xml,text/javascript" 四、测试gzip压缩 功能是否正确开启: 测试的方法很简单,只要用firefox的firebug插件里的网络监控功能,看看下载js文件的体积是否有明显减少就知道了(测试前最好清下浏览器的 缓存)。 另外还可以用httpclient来写一个测试程序(以下内容摘自java自由人): 一旦启用了这个压缩功能后,我们怎么来测试压缩是否有效呢?首先Tomcat是根据浏览器请求头中的accept-encoding来判断浏览器是 否支持压缩功能,如果这个值包含有gzip,就表明浏览器支持gzip压缩内容的浏览, 五、介绍一个在线 gzip压缩网页的网站
原文地址:http://hi.baidu.com/javacookies/blog/item/fe3edadb5aa6c56ad1164e3a.html |
发表评论
-
基于脚本的动画的计时控制(“requestAnimationFrame”)(转载)
2014-03-04 19:12 948Internet Explorer 10 和使 ... -
IE11开发人员工具:UI响应工具详解
2014-02-27 18:33 890我讨厌debug,相信也没多少开发者会喜欢。但是当代码出 ... -
IE11开发人员工具:内存分析工具详解
2014-02-27 18:32 1380上篇我们跟大家介绍 ... -
E6与location.hash和Ajax历史记录 (转载)
2014-02-26 12:23 519为了在IE6中改变hash来保留历史记录实现ajax的前进 ... -
MIME Types(转载)
2013-12-31 10:20 604MIME Types - Complete List ... -
iframe历史记录问题(转载)
2013-10-17 10:21 1254在做页面统计的时候 ... -
前端类库精选(转)
2013-05-11 00:57 0优秀的前端类库,自己平时遇见了,这里Mark一下。 1、m ... -
10个chrome console实用小技巧(转)
2013-05-09 10:56 10251. 基本输出 让我们先从最常见的console.l ... -
CSS3那些不为人知的高级属性(转)
2013-04-19 13:35 903原文:CSS的未来:一些 ... -
JavaScript 时间、格式、转换及Date对象总结(转)
2013-04-10 14:49 684悲剧的遇到问题,从前台得到时间,“Tue Jan 29 16 ... -
如何制作一个可及性强(accessible)的网页弹框(转载)
2013-04-02 16:18 783英文原文:Making an accessib ... -
JavaScript MVC js也mvc(转载)
2013-03-16 23:59 666JavaScript MVC 中文:http://blog ... -
SUBLIME TEXT 2 设置文件详解
2012-12-27 11:21 1021Sublime Text 2是那种让人会一眼就爱上的编辑 ... -
两个按位非操作与Math.floor操作(译)
2012-12-10 18:17 919位操作符在我们编码过程中是容易被遗忘的,可能更多的源于我们 ... -
img中src为空的影响
2012-11-26 23:32 0这是我们经常能遇到的代码,可以直接用html标签或者Java ... -
IE6下position定位子元素溢出,父元素被撑开的解决思路。(转)
2012-11-13 18:04 1608在一些被常规的页面布局当中,我们常常需要通过positi ... -
chrome developer tool 调试技巧(转)
2012-11-12 13:16 815这篇文章是根据目前 chrome 稳定版(19.0.10 ... -
你清楚jquery是如何清除ajax缓存的吗?(转)
2012-11-11 11:19 1027大家都知道万恶的IE在ajax中往往只读取第一次ajax ... -
是时候使用JavaScript严谨模式(Strict Mode)提升团队开发效率 In JavaScript(转)
2012-11-10 23:33 687随着WebApp突飞猛进的发展,Javascript写的 ... -
Javascript基础
2012-11-10 23:25 0原文:http://bonsaiden.githu ...
相关推荐
开启TOMCAT6的GZIP压缩功能,在客户端请求网页后,从服务器端将网页文件压缩,再下载到客户端,由客户端的浏览器负责解压缩并浏览。相对于普通的浏览过程HTML ,CSS,Javascript , Text ,它可以节省40%左右的流量。...
很多大站都开启了gzip压缩,不过也有很多网站并没有开启gzip压缩,上次看了一篇文章说开启gzip压缩后对搜索引擎不友好,但从带宽和流量的角度来看,还是有必要开启gzip压缩的。 对于tomcat7服务器,打开conf文件夹下...
原理简介 HTTP 压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求服务器对应资源后,从服务器...Tomcat5.0以后的版本是支持对输出内容进行压缩的,使用的是gzip压缩格式 。 修改%TOMCAT_HOME%/conf/server.
HTTP压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求服务器对应资源后,从服务器端将资源文件压缩,再输出到客户端,由客户端的浏览器负责解压缩并浏览。即:通过减小HTTP响应大小来减少响应时间。相...
一个页面减少10KB对于一个小网站来说,算不上什么,但对于大型站点来说,累计起来却是一个很大的流量……gzip压缩是一个有效可行的方法,但需要Apache的支持(Apache与IIS共用一个端口解决方法)。 传统的JS压缩(删除...
张宴《实战Nginx:取代Apache的高性能Web服务器》pdf电子版下载,此资料网友共享,请购买作者正版书籍. 目录介绍: 第1部分 基础篇 第1章 Nginx简介 1.1 常用的Web服务器简介 1.2 Nginx简介 1.3 选择Nginx的理由 ...
我们熟悉的Web服务器,比如IIS、Tomcat、Nginx、Apache等都可以使用压缩技术,常用的压缩类型包括Brotli、Gzip、Deflate,它们对CSS、JavaScript、HTML、XML 和 JSON等类型的效果还是比较明显的,但是也存在一定的...
5.1 Nginx与JSP(Tomcat)在Linux上的安装、配置 5.2 Nginx与ASP.NET(Mono+FastCGI)在Linux上的安装、配置 5.3 Nginx与Perl(FastCGI)在Linux上的安装、配置 第6章 Nginx HTTP负载均衡和反向代理的配置与优化 ...
#开启gzip压缩 gzip on; gzip_disable "MSIE [1-6]\.(?!.*SV1)"; #设定请求缓冲 client_header_buffer_size 1k; large_client_header_buffers 4 4k; include /etc/nginx/conf.d/*.conf; include /etc/...
5.1 Nginx与JSP( Tomcat) 在Linux上的安装、 配置 5.2 Nginx与ASP.NET( Mono+FastCGI) 在Linux上的安装、 配置 5.3 Nginx与Perl( FastCGI) 在Linux上的安装、 配置 第6章 Nginx HTTP负载均衡和反向代理的配置...
Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置...
Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置...