首先检测一下你的网站服务器是否开启了Gzip压缩,点击这里可以检测一下。Gzip压缩检测
什么是gzip?
Gzip 用于UNIX系统的文件压缩,在Linux中经常会用到后缀为.gz的文件,它们就是Gzip格式的。现今已经成为Internet 上使用非常普遍的一种数据压缩格式,或者说一种文件格式。HTTP协议上的Gzip编码是一种用来改进WEB应用程序性能的技术。大流量的WEB站点常常 Gzip开启以后会将输出到用户浏览器的数据进行压缩的处理,这样就会减小通过网络传输的数据量,提高浏览的速度。
如何开启gzip?
index.php
文件开启Gzip压缩1、下载Wordpress网站根目录index.php文件到本地,用专业网页或代码编辑软件打开编辑,请勿使用系统自带的记事本。填的时候注意标点符号,需英文状态输入。
2、在打开的index.php 中找到:
define(’WP_USE_THEMES’, true);
在后面加上:
ob_start(‘ob_gzhandler’)
这种方法最简单,推荐使用。不过有个弊端,就是当wordpress系统升级后需要重新设置
.htaccess
启用Gzip压缩1、如果你的网站空间或服务器支持.htaccess文件,首先,看看你的根目录下有没有.htaccess文件,如果没有请在本地建立一个txt格式的文件,然后上传到你的根目录下,重命名为.htaccess。请注意,.htaccess文件的位置必须是在根目录下。那么在wordpress根目录的.htaccess中添加以下代码,然后上传到wordpress根目录即可。
2、用FTP软件登陆Wordpress博客网站目录。
3、右键.htaccess文件-编辑,打开.htaccess文件。在最后面加上一下三种代码中的任意一种。
第一种:
php_value output_handler ob_gzhandler
第二种:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A604800
ExpiresByType text/css A604800
</IfModule>
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/css image/gif image/jpeg image/png application/x-javascript
</IfModule>
第三种
php_flag zlib.output_compression On
php_value zlib.output_compression_level 8
保存上传,覆盖原来的文件。现在你的网站就开启了gzip功能。
php.ini
启用Gzip压缩1、如果服务器支持php.ini重定义的话,可以在php.ini中增加以下代码来开启gzip。
zlib.output_compression_level = number
2、其中number为1—9的值,1的压缩比率最低, 建议取5。
gzippy
插件开启Gzip压缩下载wordpress插件Gzippy,点wordpress后台的安装插件-上传-选择文件-现在安装,安装完成后启动插件即可。
WP Super Cache
缓存插件自带功能开启Gzip压缩如果你的wordpress已安装WP Super Cache缓存插件,可以在WP Super Cache设置-高级选项中勾选Compress pages so they’re served more quickly to visitors.(Recommended)一项,这样也可以开启Gzip压缩。
将下面的代码复制到当前主题的 functions.php 文件中也可以实现 WordPress 整站 gzip 压缩:
add_action('init', 'wpjam_gzip_compression');
function wpjam_gzip_compression(){
if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) {
ob_start('ob_gzhandler');
}else{
ob_start();
}
}
注意事项及说明
1、如果在.htaccess文件中禁止了gzip功能的话,那在php.ini文件中开启后也需在.htaccess文件中开启gzip,否则没有效果。
2、开启wordpress的gzip功能后,服务器将在页面传输前将页面压缩后传送,可以有效减少服务器的带宽使用,也可以加速页面下载。
3、另外请注意只能选择一种方式来开启wordpress gzip压缩,否则有可能造成冲突,请谨记。
经过测试,采用服务器压缩要比使用 PHP 压缩要更快,而且压缩之后更小。所以最好的方法还是直接让 Apache 直接进行 gzip 压缩。如果无法修改 Apache 的 httpd.conf 文件,再尝试去修改 php.ini 文件,最终才是使用修改 php 文件以及 WordPress hook 的方法。