原理:
浏览器—请求—-> 声明可以接受 gzip压缩 或 deflate压缩 或compress 或 sdch压缩
从http协议的角度看–请求头 声明 acceopt-encoding: gzip deflate sdch (是指压缩算法,其中sdch是google倡导的一种压缩方式,目前支持的服务器尚不多)
服务器–>回应—把内容用gzip方式压缩—->发给浏览器
浏览<—–解码gzip—–接收gzip压缩内容—-
gzip配置的常用参数
参数 | 含义 |
---|---|
gzip on/off | 是否开启gzip |
gzip_buffers 32 4K / 16 8K | 缓冲(压缩在内存中缓冲几块? 每块多大?) |
gzip_comp_level [1-9] | 推荐6 压缩级别(级别越高,压的越小,越浪费CPU计算资源) |
gzip_disable | 正则匹配UA 什么样的Uri不进行gzip |
gzip_min_length 200 | 开始压缩的最小长度(再小就不要压缩了,意义不大) |
gzip_http_version 1.0/1.1 | 开始压缩的http协议版本(可以不设置,目前几乎全是1.1协议) |
gzip_proxied | 设置请求者代理服务器,该如何缓存内容 |
gzip_types text/plain application/xml | 对哪些类型的文件用压缩 如txt,xml,html ,css 文件类型查看conf/mime.types文件 |
gzip_vary on/off | 是否传输gzip压缩标志 |
注意:
图片/mp3这样的二进制文件,不必压缩
因为压缩率比较小, 比如100->80字节,而且压缩也是耗费CPU资源的.
比较小的文件不必压缩,
例子:
server { listen 80; #监听端口 server_name localohst; #监听域名 gzip on; #开启gizip gzip_buffers 32 4K;#压缩在内存中缓冲32块 每块4K gzip_comp_level 6 ;#压缩级别 推荐6 gzip_min_length 4000;#开始压缩的最小长度4bit gzip_types text/css text/xml apploation/x-html" target="_blank">javascript;#只对CSS、XML、JS文件进行压缩。 默认压缩text/html 不需要指定,否则报错 location / { root /var/www/a.com; #根目录定位 index index.html; } }
以上所述是小编给大家介绍的Nginx启用GZIP压缩网页传输方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
我试图启用gzip压缩的组件我的网站。我有ubuntu 11.04服务器和nginx 1.2。 在网站的nginx配置中,我有以下内容 Yslow和谷歌的速度测量建议我使用gzip来减少网络传输。现在,当我尝试时,我得到了 是否知道我做错了什么,或者我应该做什么来获得压缩内容?
本文向大家介绍php读取远程gzip压缩网页的方法,包括了php读取远程gzip压缩网页的方法的使用技巧和注意事项,需要的朋友参考一下 今天在调取一家商城的页面信息时候,使用file_get_contents抑或curl: 都得到一片乱码,查看了许多内容,包括页面的header信息,发现原来页面使用了。 类似的信息,即Content-Encoding为gzip,即该站点开启了gzip压缩。
gzip是一种数据格式,默认且目前仅使用deflate算法压缩data部分; Gzip是一种流行的文件压缩算法,现在的应用十分广泛,尤其是在Linux平台。当应用Gzip压缩到一个纯文本文件时,效果是非常明显的,大约可以减少70%以上的文件大小。这取决于文件中的内容。 利用 MinDoc 中的Gzip模块,可以使用Gzip压缩算法来对 MinDoc 发布的网页内容进行压缩后再传输到客户端浏览器。这
问题内容: 我想使用Gzip压缩来压缩java中的输入流。 假设我们有一个未压缩的输入流(1GB数据..)。因此,我需要从源压缩的输入流: 问题答案: DeflaterInputStream不是您想要的,因为它缺少gzip标头/预告片,并且使用略有不同的压缩方式。 如果从OutputStream(推)更改为InputStream(拉),则需要做不同的事情。 GzipOutputStream的作用是
本文向大家介绍Tomcat7中开启gzip压缩功能的配置方法,包括了Tomcat7中开启gzip压缩功能的配置方法的使用技巧和注意事项,需要的朋友参考一下 使用gzip压缩可以减少数据传输大小,加快网页加载速度。很多大站都开启了gzip压缩,不过也有很多网站并没有开启gzip压缩,上次看了一篇文章说开启gzip压缩后对搜索引擎不友好,但从带宽和流量的角度来看,还是有必要开启gzip压缩的。 对于t
我想在JavaScript中做解压缩图像。我已经用C#使用gzip压缩了图像。如何在JavaScript中解压缩gzipped数据? C#代码
问题内容: 我正在使用php的功能来执行HTTP请求。为了节省带宽,我决定使用添加标题。 显然,输出一个gzip编码的字符串,所以我用来解码该编码的字符串,但是将作为参数传递的数据出错。 我知道还有另一个功能可以解压缩压缩后的数据,但是它不包含在我的PHP版本中(也许仅在SVN上可用)。 我知道cUrl可以即时解码gzip流(没有任何问题),但是有人建议我使用它而不是cUrl。 您是否知道以其他方