wordpress五种启用gzip压缩的方法,总有一种你用得着!

/ 2评 / 0

喻名堂曾经也为了自己的wordpress能启用gzip压缩功能搜索过很多的方法,在这里喻名堂整理出5种在网上搜索到的方法,一方面备忘,一方面也方便其他人参考与借鉴,总有一种你能用得着!

1、打开网站根目录里面的index.php文件(注意不是主题里面的,是根目录),找到:

  1. define(’WP_USE_THEMES’, true);  

 在下面添加如下代码:

  1. ob_start(‘ob_gzhandler’);  

服务器必须支持Zlib Compression Functions才有办法启动,可以丢个网页探针到服务器上查询看看就知道了 

这种方法是最简单的一种,不过有一个小弊端,就是每次程序升级都要重新修改文件。

2、第二种方法需要服务器支持.htaccess文件。在wordpress根目录中创建一个.htaccess文件,通过.htaccess文件有两种代码可以实现启用gzip压缩,代码如下:

第一种:

  1. php_value output_handler ob_gzhandler  

第二种:

  1. <IfModule mod_expires.c>   
  2. ExpiresActive On   
  3. ExpiresByType image/gif A2592000   
  4. ExpiresByType image/jpeg A2592000   
  5. ExpiresByType image/png A2592000   
  6. ExpiresByType image/x-icon A2592000   
  7. ExpiresByType application/x-javascript A604800   
  8. ExpiresByType text/css A604800   
  9. </IfModule>   
  10.   
  11. <IfModule mod_deflate.c>   
  12. SetOutputFilter DEFLATE   
  13. AddOutputFilterByType DEFLATE text/html text/css image/gif image/jpeg image/png application/x-javascript   
  14. </IfModule>   

 3、通过php.ini来启用GZIP,前提是服务器要支持php.ini重定义,可以在php.ini中增加如下代码:

zlib.output_compression_level = number( number为1—9的值,1的压缩比率最低, 建议取 5)

需要注意的是如果在.htaccess文件中禁止了gzip功能的话,那在php.ini文件中开启后也需在.htaccess文件中开启 gzip,否则没有效果。

4、安装wordpress的GZIP插件

插件名称:gzippy

下载地址:http://wordpress.org/extend/plugins/gzippy/

5、找到主题下面的function.php文件,将如下代码添加到此文件中:

  1. //Gzip压缩   
  2. function dtheme_gzip() {   
  3. if ( strstr($_SERVER['REQUEST_URI'], ‘/js/tinymce’) )   
  4. return false;   
  5. if ( ( ini_get(‘zlib.output_compression’) == ‘On’ || ini_get(‘zlib.output_compression_level’) > 0 ) || ini_get(‘output_handler’) == ‘ob_gzhandler’ )   
  6. return false;   
  7. if (extension_loaded(‘zlib’) && !ob_start(‘ob_gzhandler’))   
  8. ob_start();   
  9. }   
  10. add_action(‘init’,'dtheme_gzip’);   
  11. //代码结束  

 以上5种方法都可以开启wordpress的GZIP压缩功能,但是只能使用一种方式来开启,不然有可以会冲突。第2和3种不适合喻名堂的wrodpress博客,喻名堂又不想用插件,所以喻名堂是用的第5种,推荐大家也用第5种,比较方便。

设置好以后就可以在http://tool.chinaz.com/Gzips/测试一下压缩效果,上一张喻名堂博客检测的效果图

 

如果想及时了解喻名堂的最新动态,请点击订阅订阅本站,有什么好的建议和意见的可以留言和喻名堂讨论交流。

  1. Cain says:

    虚拟主机若未开启此功能,是不是就无法开启?

Leave a Reply to 喻名堂 Cancel reply

Your email address will not be published. Required fields are marked *