纯代码实现Gzip压缩 提升WordPress网站浏览速度
2012-04-05

看到这篇文章,可能有的童鞋会问,开启GZIP有什么好处呢?简单而言,开启GZIP后,用户访问的数据将会以压缩形式传输到用户浏览器,然后在解压,达到网络传输的数据量减少目的,从而增加网站浏览速度,并且对搜索引擎收录不会产生影响。正式解释如下:

Gzip开启以后会将输出到用户浏览器的数据进行压缩的处理,这样就会减小通过网络传输的数据量,提高浏览的速度。

如何知道自己的网站是否已近开启了GZIP呢?

其实确定自己的网站是否很简单,你只需要访问http://gzip.zzbaike.com网站,然后输入自己的域名即可查看站点是否已经开启GZIP功能。

那么,WordPress网站如何开启GZIP功能呢?

这个将是本篇教程的重点,通过纯PHP代码方式实现GZIP压缩功能,为你的站点提速。该教程对于那些不支持htaccess的朋友来说是一个很好的解决方案,你只需要将以下代码拷贝到WordPress主题的functions.php文件中即可(如果主题没有该文件,可以手动建一个),为最大化提升站点访问速度,偶米工作室在此建议将代码放在文件最前面。

/* HTTP Gzip */
$host = $_SERVER['HTTP_HOST'];
if ( !strstr($host, '192.168') && !strstr($host, '127.0.0') && !stristr($host, 'localhost') ) { // 本地調試不用
function wp_gzip() {
  // Don't use on Admin HTML editor
  if ( strstr($_SERVER['REQUEST_URI'], '/js/tinymce') )
    return false;
  // Can't use zlib.output_compression and ob_gzhandler at the same time
  if ( ( ini_get('zlib.output_compression') == 'On' || ini_get('zlib.output_compression_level') > 0 ) || ini_get('output_handler') == 'ob_gzhandler' )
    return false;
  // Load HTTP Compression if correct extension is loaded
  if (extension_loaded('zlib') && !ob_start('ob_gzhandler'))
    ob_start();
}
add_action('init', 'wp_gzip');
}

注:以上代码未对css和js进行压缩。

好了,添加完以上代码后,你可以重新确定测试自己的站点开启GZIP功能后节省了多少流量,相信会让你有极大成就感。

相关知识