利用php中的zlib库的ob_gzhandler函数实现页面压缩包括css和js

为了提升性能,页面在服务器端利用gzip算法进行压缩,基本大部分站点都是这么做的,但是这部分工作一般是交给了apache服务器本身来做的, 其实也可以利用php本身zlib库来实现对页面的压缩,但这仅仅是一个替代方案,效率上肯定没前一种好的,下面主要介绍下用这种方案的实现方式。

1,压缩php文件:只要在页面的最开始部分加上如下代码即可:

< ?php if(extension_loaded(’zlib’)) {ob_start(’ob_gzhandler’);} ?>

ob_start(”ob_gzhandler”)这句话的意思是首先将页面放到缓冲区中,然后利用库函数ob_gzhandler对页面内容进行gzip的压缩,最后把页面输出。当然必须先判断是否装有这个扩展了
2,压缩静态文件,如css,js等
比如说对于style.css来说,可以将其命名为style.css.php,然后在其文件开头加入一下代码:

< ?php if(extension_loaded(’zlib’)) {ob_start(’ob_gzhandler’);} header(”Content-Type:text/css”);?>

最后在页面的最后加上

< ?php if(extension_loaded(’zlib’)) {ob_end_flush();} ?>

即可
同样对于javascript文件一样

不过对于image文件就没有办法了
本文地址:http://www.yaronspace.cn/blog/index.php/archives/102

你可能感兴趣的:(JavaScript,apache,PHP,算法,css)