WordPress 2.8开启Gzip压缩功能
博客流量过大和带宽不足的问题,这两天深深地困扰了我。每天大约500MB的流量超过了我的预期,不过这些流量中,却只有不到200MB是访客访问流量,剩下的有200MB+是搜索引擎抓取网页的流量,加上接近100MB错误页面流量。
这其中要解决的当然是搜索引擎和404页面的问题。不过要想彻底解决问题,除了购买流量之外好像并没有完美的解决方案:搜索引擎的流量占用我无能为力,难不成我阻止搜索引擎的机器人来我这里抓取?404页面占用太多流量的问题也找不到好的解决办法,当时使用 Global Translator 的时候太年轻不懂深浅,导致了现在的局面,我只好杀鸡取卵,直接将404页面搞掉了,通过搜索引擎搜到已经去除页面的用户,只好连他们浏览我博客的机会也不给了。
不过 countmeon 同学一语点醒梦中人,建议我打开博客的 Gzip 压缩功能,左岸读书也提到通过压缩减少了一些流量。搜索了一下,发现 WordPress 2.5之后的版本取消了自带的 Gzip 压缩功能,要解决问题只能自力更生了,还好网上有比较详细的解决方法。下面转述两种解决办法:
1、全动手型:
首先开启虚拟主机的 Gzip 功能:在 Wordpress 安装目录下新建或者编辑 php.ini,在其中添加代码:
output_buffering = Off output_handler = zlib.output_compression = On
保存之后,再编辑 Wordpress 根目录下的 .htaccess 文件,以压缩 JS、CSS、HTML、XML 文件。如果服务器使用的是 Apache 2,采用 mod_deflate 模块来实现 Gzip。我们在 .htaccess 中加入以下代码就可以压缩 HTML, PHP, JS, CSS, XML 后缀的文件:
AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-httpd-php application/x-javascript
如果服务器 Apache 版本不是 2.0 而是 1.3,就可以使用 ob_gzhandler 函数进行压缩。这里不再叙述,请到水煮鱼博客查看。
2、半动手型:
根据辐射鱼的指示,首先下载 Gzip.php 文件并上传到你的 Wordpress 安装目录,然后在你的 Wordpress 根目录建立 wp-cache 文件夹并确保其可写入(属性777),最后在 .htaccess 里面加上下列代码:
RewriteRule (.*.css$|.*.js$) gzip.php?$1 [L]
然后登陆 Gzip 检测页面,输入我的博客地址 http://louishan.com 进行检测,成功了!首页从60KB压缩到了16KB,也所率达到73%。

------------------------分割线,下面是出现的问题--------------------
我是完全自己动手进行的压缩,不过压缩也带来了问题,一些图片上面竟然给我添加了外框,灰常难看啊!有没有开启压缩的同学遇到同样的问题,怎么解决的呢?


还有一个问题是对排版也产生了小小的影响,估计是压缩 CSS 文件导致的吧,可惜不知道应该如何修改。有同学知道吗?不吝赐教啊!

Powered by Zoundry Raven































































2009/10/08 于 22:58:32
不知道怎么解决的说=v=图片方面估计可能是因为已经改动了图片之类的,试试用png呢?
[回复]
kangzj 回复:
十月 8th, 2009 at 11:53 下午
@lovee, 还应该是css的问题,肯定不关图片格式的事情
[回复]
Louis Han 回复:
十月 9th, 2009 at 12:06 上午
@kangzj, 看来真可能是CSS的问题,我把CSS压缩去掉试试吧
[回复]
Louis Han 回复:
十月 9th, 2009 at 12:04 上午
@lovee, 好像不是图片的问题呢,我的图片本来也是PNG的
[回复]
2009/10/08 于 23:04:31
你那个图片外框问题好像只在IE中出现
[回复]
Louis Han 回复:
十月 9th, 2009 at 12:04 上午
@A.shun, Firefox也是这样的
[回复]
2009/10/08 于 23:12:08
最简单的对策 -- 买流量。。。
[回复]
Louis Han 回复:
十月 9th, 2009 at 12:04 上午
@wayne, 我要是有钱人就好了
[回复]
2009/10/08 于 23:15:35
没必要开GZ吧。。我一个月流量没有超过1G过……
[回复]
Louis Han 回复:
十月 9th, 2009 at 12:04 上午
@我买糕的。, 我两天就超过1GB!
[回复]
2009/10/08 于 23:19:37
压缩之后,是不是还能同时提高访问速度?
[回复]
Louis Han 回复:
十月 9th, 2009 at 12:05 上午
@exia, 按照理论来说,确实应该是这样的
[回复]
exia 回复:
十月 9th, 2009 at 10:58 上午
@Louis Han, 那我要試試看,我覺得我的速速還是有些偏慢~
[回复]
2009/10/09 于 00:02:50
看了你的流量,惊呆了。
[回复]
Louis Han 回复:
十月 9th, 2009 at 12:29 上午
@MuMu'S, 我自己也很惊呆
[回复]
2009/10/09 于 02:21:41
我使用的服务器默认就开了Gzip,所以我就不用管了。
错位的问题很奇怪啊,你如果没修改css的话应该不会啊
[回复]
Louis Han 回复:
十月 9th, 2009 at 11:34 上午
@whisperer, 我开启了Gzip压缩CSS功能,估计是这边出问题了
[回复]
2009/10/09 于 08:46:14
有的时候流量高也不是一件好事啊!
[回复]
Louis Han 回复:
十月 9th, 2009 at 11:36 上午
@爱.一起.你, 如果钱多就不是问题 呵呵
[回复]
2009/10/09 于 09:24:58
博客流量过小和带宽过剩的问题,这两天深深地困扰了我。
呵呵
[回复]
Louis Han 回复:
十月 9th, 2009 at 11:35 上午
@engic, 羡煞旁人啊
[回复]
itlobo 回复:
十月 9th, 2009 at 1:03 下午
@engic, 不担心带宽的人路过
[回复]
2009/10/09 于 10:00:23
建议使用wp super cache,这个就能直接使用gzip了,而且静态化了
Autoptimize 这个插件能压缩代码的,呵呵
另外我送了一些带宽给你,应该够用的
[回复]
Louis Han 回复:
十月 9th, 2009 at 11:38 上午
@胡戈戈, 戈戈真是太慷慨了,竟然送了那么多,谢谢谢谢啊!
你说的那两个插件我试试看,希望不该有的流量降下来。
[回复]
胡戈戈 回复:
十月 9th, 2009 at 11:40 上午
@Louis Han, 用着不满意,我自己也很心疼的
[回复]
Louis Han 回复:
十月 9th, 2009 at 12:45 下午
@胡戈戈, 目前很好,挺满意的 O(∩_∩)O~ 还得多谢你的慷慨相助
[回复]