在WordPress中虽然有插件可以启动Gzip网页压缩,不过能通过几句语法来达到网页压缩,这样不是更好吗?其实在PHP中,有一句语法是可以开启Gzip的,只要加在网页输出的前端即可。那Wordpress的Gzip压缩到底怎么实现呢?下面就来具体说一下。
方法一
在根目录 index.php 中找到(注意一下,这个是博客的根目录,不是模板根目录):
define(‘WP_USE_THEMES’, true);
在后面加上:
ob_start(‘ob_gzhandler’)
这种方法最简单,推荐使用,不过这种方法有个弊端,就是当wordpress系统升级后有得重新设置。
方法二
如果服务器支持.htaccess文件,那么在wordpress根目录的.htaccess中添加以下代码然后上传到wordpress根目录即可,实现gzip压缩代码共有两种,详细代码如下如下,添加好之后上传到wordpress根目录来测试。
<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 Mod_deflate.C>
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE Text/Html Text/Css Image/Gif Image/Jpeg Image/Png Application/X-Javascript
方法三
如果服务器支持php.ini重定义的话,可以在php.ini中增加以下代码来开启gzip。
zlib.output_compression_level = number
(number为1—9的值,1的压缩比率最低, 建议取 5)
方法四
可以安装wordpress的gzip插件,比如gzippy。在WordPress中,其实大部分的缓存插件都有内建启动Gzip压缩功能,不论是老牌的缓存插件WP Super Cache、轻巧的1 Blog Cacher或是hyper Cache都可以启动Gzip网页压缩功能。如果你没有装这些插件,或是这些插件虽然启动了Gzip功能但是检测出来却没有压缩,那你可能需要通过插件GZippy来启动,不过通过这个插件来启动时,记得缓存插件本身的Gzip要关掉,否则可能造成冲突。
需要注意的是如果在.htaccess文件中禁止了gzip功能的话,那在php.ini文件中开启后也需在.htaccess文件中开启 gzip,否则没有效果。开启wordpress的gzip功能后,服务器将在页面传输前将页面压缩后传送,可以有效减少服务器的带宽使用,也可以加速页面下载。另外请注意只能选择一种方式来开启wordpress gzip压缩,否则有可能造成冲突,请大家谨记。
设置好之后大家可以到http://tool.chinaz.com/Gzips/进行测试看看wordpress gzip压缩有没有起作用。