PHP程序员站--PHP编程开发平台
 当前位置:主页 >> PHP高级编程 >> 高级应用 >> 

Linux空间用Gzip对网页内容进行压缩

Linux空间用Gzip对网页内容进行压缩

来源:互联网  作者:  发布时间:2010-04-28
使用mod_gzip 和 mod_deflate对网页内容进行压缩 Gzip是一种流

Linux 空间不支持mod_gzip、mod_deflate模块

Linux 空间不支持mod_gzip、mod_deflate模块,若想通过GZIP压缩网页内容,可以考虑两种方式,开启zlib.output_compression或者通过ob_gzhandler编码的方式。

zlib.output_compression是在对网页内容压缩的同时发送数据至客户端,ob_gzhandler是等待网页内容压缩完毕后才进行发送,相比之下前者效率更高,但需要注意的是,两者不能同时使用,只能选其一,否则将出现错误。

下文仅针对GoDaddy Deluxe Hosting – Linux 空间,对两者的实现方式做简单描述。

在默认情况下,zlib.output_compression是关闭的,如需开启需编辑php5.ini文件,加入以下内容:

以下为引用的内容:
zlib.output_compression = On
zlib.output_compression_level = 6

然后将php5.ini上传到FTP根目录下,剩下的事请就是等待它生效,这可能需要一段时间,可以通过phpinfo()函数检测结果:

以下为引用的内容:
Directive                       Local Value   Master Value
zlib.output_compression         On            On
zlib.output_compression_level   6             6

当zlib.output_compression的Local Value和MasterValue的值同为On时,表示已经生效,这时候访问的PHP页面(包括伪静态页面)已经GZIP压缩了,通过Firebug或者在线网页GZIP压缩检测工具可检测到压缩的效果。

如果需要使用ob_gzhandler,则需关闭zlib.output_compression,把php5.ini文件内容更改为:

以下为引用的内容:
zlib.output_compression = Off
zlib.output_compression_level = -1

ob_gzhandler是GoDaddy官网推荐的用法,通过在PHP文件中插入相关代码实现GZIP压缩,以下是GoDaddy帮助中心所提到的:

GZIP Compression

Smaller pages load faster, regardless of your Internet connection speed. You can make your pages smaller by compressing them with GZIP. For more information about GZIP and our hosting, see Compressing Web Pages for Faster Load Times.

《Compressing Web Pages for Faster Load Times》文中提到,将以下PHP代码加入到PHP文件顶部,即可实现GZIP压缩。

以下为引用的内容:
<?php
if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip'))
ob_start("ob_gzhandler");
else
ob_start();
?>

不管是zlib.output_compression还是ob_gzhandler,都仅能对PHP文件进行GZIP压缩,对于HTML、CSS、JS等静态文件只能通过调用PHP的方式实现。

最后想说的是,现在主流的浏览器默认使用的是HTTP1.1协议,基本都支持GZIP压缩,对于IE而言,假如你没有选中其菜单栏工具-》Internet 选项-》高级-》HTTP 1.1 设置-》使用 HTTP 1.1,那么,你将感受不到网页压缩后的速度提升所带来的快感!

注明:文章mod_gzip 和mod_deflate压缩方法的内容来自风的翅膀;zlib.output_compression与ob_gzhandler压缩方法来自chibl.com


延伸阅读:
告诉你如何关闭GZIP,多种程序方法
文件压缩成Gzip格式的类
使用mod_gzip加速你的html页面
PHP使用zlib扩展实现页面GZIP压缩输出
php对gzip文件或者字符串解压实例参考
使用PHP和GZip压缩网站JS/CSS文件加速网站访问速度
php启用gzip页面压缩示例
最新文章
推荐阅读
月点击排行榜
PHP程序员站 Copyright © 2007-2010,PHPERZ.COM All Rights Reserved 粤ICP备07503606号