以前写过一篇 WordPress之页面加载速度优化 ,里边提到了gzip优化,当时给的是万戈博客的外链,他那里一堆Gzip的文章,每次找都要打开一遍,很麻烦。今天整理一下,转到我的博客,以防文章丢失。(哈哈,我这算不算乌鸦嘴呢?)

开启Gzip有什么好处呢?

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

如何给Wordpress开启Gzip压缩功能呢?

方法1:利用Cpanel开启Gzip加速(从冰剑博客那抄来的)

如果大家用的是国外空间,那么你将会很容易的打开这项功能,因为 Cpanel 里边自带了Gzip压缩功能。

1、在 Cpanel 中找到 Optimize Website

2、选择 Compress all content 即可

方法2:利用 PHP 与 .htacess 开启 Gzip 加速 (万戈的方法)

1、下载 gzip.zip,解压后上传至网站根目录。

2、修改根目录的.htaccess,增加gz的识别支援及网址改写:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#識辨gz檔案的支援
<Files *.js.gz>
  AddEncoding gzip .js
  ForceType application/x-javascript
</Files>
<Files *.css.gz>
  AddEncoding gzip .css
  ForceType text/css
</Files>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

#wordpress靜態網址,如果沒有使用,就略過
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

#讀到css和js檔,就重導至gzip.php
RewriteRule (.*.css$|.*.js$) gzip.php?$1 [L]

#讀到.css,判斷如果瀏覽器支援gzip且.css.gz檔存在,就進行重導
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*).css $1.css.gz [L,QSA]

#讀到.js,判斷如果瀏覽器支援gzip且.js.gz檔存在,就進行重導
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*).js $1.js.gz [L,QSA]
</IfModule>

3、浏览自己的网站,让CSS和JS产生gz档,并将相应的.gz文件权限设置为777。

4、最后,再次改写.htaccess,把以下代码注释掉或删除。

1
RewriteRule (.*.css$|.*.js$) gzip.php?$1 [L]

如果今后动了模板的CSS或JS后,还要还原那句代码并重做第3、4步。所以该方法稍有些复杂,比较适合像我一样喜欢折腾Wordpress的童鞋们。

开启完GZIP,可以去站长工具那测试一下,地址如下:
http://tool.chinaz.com/Gzips/