gzip会对文本资源进行压缩,一般能节省40%的大小,二进制内容不需要开启Gzip压缩,因为这些文件是已经压缩过的,如果再进行gzip压缩可能反而会增加其大小,并且空耗cpu资源啊。
静态资源一般都会在代理服务器上进行缓存,而有的浏览器支持gzip,但是也有不支持gzip的老旧浏览器,所以需要设置Vary:
Accept-Encoding 头,这个头告诉浏览器,服务器已经接受压缩请求,将原压缩过的内容返回了,还有这个Content-Encoding:
gzip头部,它通知浏览器,服务器端采用的压缩格式,因为压缩格式不是唯一的,所以需要通知浏览器是哪种压缩格式,浏览器才能正确的解压内容啊。
对于已经安装过deflate_module模块的Apache,gzip压缩设置如下:
1.AddOutputFilter DEFLATE html htm php txt xml css js
或者
2.AddOutputFilterByType DEFLATE application/x-javascript text/html text/plain text/xml text/css
第2种方式apache已经不需推荐了,只采用第1种方式设置即可
压缩是耗cpu资源的,所以对于jpg这种图片格式的文件就不要压缩了,因为jpg本身就是压缩过的文件.
Apache中的gzip压缩作用及配置
时间: 2024-10-12 02:07:09