`

Apache启用GZIP压缩优化网站(GZIP、网站优化)

阅读更多
先来了解一下GZIP,gzip 是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序,也经常用来表示gzip这种文件格式。软件的作者是Jean-loup Gailly和Mark Adler。1992年10月31日第一次公开发布,版本号是0.1,目前的稳定版本是1.2.4。

gzip可以级大的加速网站.有时压缩比率高到80%,近来测试了一下,最少都有40%以上,还是相当不错的.在Apache2之后的版本,模块名不叫gzip,而叫mod_deflate

1、Apache启用gzip

如果要开启gzip的话,一定要打开下面二个模块.
LoadModule headers_module modules/mod_headers.so
LoadModule deflate_module modules/mod_deflate.so

设置压缩比率,取值范围在 1(最低) 到 9(最高)之间,不建议设置太高,虽然有很高的压缩率,但是占用更多的CPU资源.
DeflateCompressionLevel 3
AddOutputFilter DEFLATE html xml php js css
<Location />
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \\.(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary

Header append Vary User-Agent env=!dont-vary #对代理的设置
</Location>

下面二个测试网站

http://www.whatsmyip.org/mod_gzip_test/

http://www.gidnetwork.com/tools/gzip-test.php

测试数据对css
Original Size: 44 KB
Gzipped Size: 10 KB
Data Savings: 77.27%

测试数据js
Original Size: 6 KB
Gzipped Size: 2 KB
Data Savings: 66.67%

测试数据php
Original Size: 62 KB
Gzipped Size: 15 KB
Data Savings: 75.81%

上面只是随机拿的几个数据,看的出来,使用了gzip压缩后文件小多了.

另外讲一下,有关squid对gzip的处理
在squid中,对同一个URL只保留一份缓存。对于如果不同browser(是否支持压缩)如果频繁交替访问,例如:对某个cache住的目标,一个 http/1.0请求可能会导致squid强制更新其缓存。但接下来的另一个http/1.1请求又会导致squid再次更新缓存。这样那squid缓存 数据就要频繁更新,这就极大的降低了cache命中率。
不过还好,现实环境中不支持压缩的browser毕竟是很少的情况,所以对于缓存命中率的降低很有限.

这个神通广大的模块就是mod_gzip. 它通过用和gzip一样的压缩算法对apache发出的页面进行压缩,可能的话可以把页面压缩成为原来大小的十份之一。哪,如果10K的页面只要传1K这 不就是提速10倍嘛。当然一般网页只可以达到3-6倍。那也很不错。对吧。连google这样一个大的网站都采用这个技术。你还不快跟上?

这样一个好东东,来来来,我告诉你如何安装:分3步,1、下载,2、修改配置,3、测试。

下载

到http://www.remotecommunications.com/apache/mod_gzip 下载mod_gzip.c 还有它的补丁。

安装, 配置
把mod_gzip放到你的apache的源代码目录下,新建一个mod_gzip目录如果需要补丁(针对1.3.17.la版) 还需运行:
patch mod_gizp.c
按你需要,在配置中选择动态DSO或静态编译进apache系统。如何处理在README中讲得很清楚,如-add-module=mod_gzip.c, make,make install等等。这里不多讲。

把下列配置加入httpd.conf尾部。
# MOD_GZIP configuration
mod_gzip_on Yes
mod_gzip_minimum_file_size 1002
mod_gzip_maximum_file_size 0
mod_gzip_maximum_inmem_size 60000
mod_gzip_item_include mime "application/x-httpd-php"
mod_gzip_item_include mime text/*
mod_gzip_item_include mime "httpd/unix-directory"
mod_gzip_dechunk Yes
mod_gzip_temp_dir "/tmp"
mod_gzip_keep_workfiles No
mod_gzip_item_include file ".php3$"
mod_gzip_item_include file ".txt$"
mod_gzip_item_include file ".html$"
mod_gzip_item_exclude file ".css$"
mod_gzip_item_exclude file ".js$"

在保存修改后运行
…/bin/apachectl configtest确保配置修改无误。
然后用 apachectl restart 指令重起服务。

修改,测试

在宣布做好了之前在测试一下是优秀程序员的习惯。为了尽量不影响你的用户的浏览,我们可以用把新的apache驱动在8080端口上或者用指令控制mod_gzip起作用的目录,而不是一下子全用mod_gzip.
用法如下:
MOD_GZIP configuration

没有问题后你就可以让你的用户很开心的发现’XX网站现在好快哦。’
Mod_gzip真的很神奇,100K的HTML大 文档只要12K就可以传到用户端了。越先采用这个技术你的用户对你的网站的高速度印象就越深。不过有所得必有所失,由于解压是在客户端进行的,效果和用户 的浏览器有一定关系。

摘自:http://www.fovweb.com/optimizer/iis-or-apache-web-enabled-optimize-gzip-compression.html
分享到:
评论

相关推荐

    Apache启用GZIP压缩网页传输方法

    上一篇文章我们已经介绍了Apache启用GZIP压缩网页的方法,这里又发现了一篇好文章,特分享给大家

    apache启用gzip压缩的实现方法

    利用Apache中的Gzip模块,我们可以使用Gzip压缩算法来对Apache服务器发布的网页内容进行压缩后再传输到客户端浏览器。这样经过压缩后实际上降低了网络传输的字节数,最明显的好处就是可以加快网页加载的速度。 网页...

    Apache开启GZIP压缩功能方法

    Gzip是一种流行的文件压缩算法,现在的应用十分广泛,尤其是在Linux平台,本文讲解了如何开启Apache平台上的Gzip压缩功能

    在Apache服务器上启用GZip压缩静态内容的方法

    主要介绍了在Apache服务器上启用GZip压缩静态内容的方法,通过配置.htaccess文件即可轻松实现,同时附带了一些GZip的常用命令,需要的朋友可以参考下

    Gzip压缩启用图文方法详细说明【IIS6.0、Apache】

    (已懂的请跳过) Gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序。最早由Jean-loup Gailly和Mark Adler创建,用于UNIX系统的文件压缩。我们在Linux中经常会用到后缀为.gz的文件,它们就是Gzip格式的。现今...

    kafka-examples:带有 java 和 gzip 编码的 kafka 示例

    kafka-例子此应用程序包含一个用 Java 编写的 Apache Kafka 消费者/生产者控制器的简短示例Gzip压缩生产者能够使用 gzip 压缩发送数据,从而显着减少发送到代理的数据量。 集群中不需要进一步的配置,只需指定您将在...

    apache openssl配置快速的https网站

    启用VHosts Include conf/extra/http-vhost.conf 授予目录权限 注释&lt;Directory /&gt; Deny from all 或者增加Directory授权 启用SSL I nclude conf/extra/https-ssl.conf 配置SSL &lt;VirtualHost&gt; DocumentRoot … ...

    Nginx服务器实现数据静态压缩的方法

    nginx实现静态压缩这种做法其实就像apache gzip压缩了,这种压缩是我们常见的一些事情了,下面我来介绍一些做法。 在搭建squid网页加速的时候,对于大的css 或者js要进行压缩,然后再进行缓存,这样能够提高减小下载量...

    php启用zlib压缩文件的配置方法

    但是不论是iis 还是apache默认都只压缩html类静态文件,对于php文件需要模块配置才可支持(iis7.5中开启动态+静态压缩也可以),于是利用php自身功能到达gzip的效果也成为一项合理的诉求。 实现的方法很简单,打开...

    cszcms:具有Codeigniter和Bootstrap的开源CMS(内容管理系统)

    CSZ CMS 带有Codeigniter和Bootstrap的内容管理系统(CMS)。 CSZ CMS是一个开源Web应用程序,允许管理网站... gZip压缩已启用。 安装说明: 将文件解压缩到“ htdocs”目录或“ public_html”中进行托管(如果要将

    http:简化的、轻量级的 HTTP 客户端库,是 apache httpclient 的包装器

    支持 gzip 通过一套全面的开发人员测试实现良好的测试覆盖率,为库的质量提供保证 最小化外部依赖的数量(目前:slf4j、httpmime) 自动释放/关闭http资源 用法 安装 存储库/工件在这里可用 与 Maven 您可以通过...

    杰奇1.4 破解版+注册机

    GZIP压缩,就是压缩显示的网页,可以加快显示速度,但是会消耗一些服务器资源。 2、参数设置: 后台的系统管理,以及下面每个模块都有一个参数设置,用户可以根据实际情况调整。 3、用户组管理 在后台的系统...

Global site tag (gtag.js) - Google Analytics