gzip 是什么东东呢?百科跟我们说
gzip是GNU zip的缩写,它是一个 GNU 自由软件的文件压缩程序。…
gzip 的基础是 DEFLATE ,DEFLATE 是 LZ77 与哈夫曼编码的一个组合体。…
“gzip” 也经常用来表示 gzip 文件格式,这种格式:
- 10 字节的头,包含幻数、版本号以及时间戳
- 可选的扩展头,如原文件名
- 文件体,包括 DEFLATE 压缩的数据
- 8 字节的尾注,包括 CRC-32 校验和以及未压缩的原始数据长度
简单来说,Gzip就是一种让你的网页显示变快一种神奇的东东。
那么,什么是人肉Gzip呢?就把本来要服务器动态压的东东人工压,大家可以先看一下这篇:Gzipping CSS and Javascript files。实现方式就人工zip一下,然后服务器再派上头。
<link rel="stylesheet" href="style.cgz" media="all" type="text/css" /># Compressed css files AddEncoding x-gzip .cgz AddType text/css .cgz
其实Gzip就是三个选择:CPU、内存、IO,通常都是cpu+内存来做,我并不喜欢这个人工IO的方式,它最大的一个问题就是不能解决http1.0的问题,而且很体力活,不过我们可以人工zip来看我们的东西Gzip后的大小。在中国,因为有好多xx版XP的原因,http1.0成为了可能。


共有 6 条评论
有点意思,呵呵!
如果再结合apache的url rewrite,利用规则如果存在同名的*.*gz就直接转过去用,这样根本连后缀js、css都无需修改。好处是只是更改apache的配置而无需更改源代码,代码的移植或者更换服务器都不会出现问题。
一般都是服务器程序自动压缩的,人肉上行下行还要折腾一下。人肉GZIP主要用于那种租虚拟空间的人吧,有服务器到不需要这么做了。。。
服务器端有个Apache Gzip module
嗯,这篇文章远不如上一篇红火。不过一般服务器都有gzip的
lighttpd 里的 compress 模块还可以缓存压缩后的数据,也就是第二次请求就无需耗费 cpu 来压缩了。