5熊猫网

 找回密码
 免费注册

QQ登录

只需一步,快速开始

开启左侧
查看: 2726|回复: 0
  
 乐摄宝 发表于: 2012-1-26 23:08:31|显示全部楼层|阅读模式

[博客] 让网站飞:不用插件直接启动WordPress的Gzip网页压缩

 [复制链接]
  网页想要速度再快,除了平时做好网页优化之外,如果网页输出时可以经过压缩,那可以让网页加速开启,减少等待时间,这项功能就叫做Gzip网页压缩。在WordPress中虽然有插件可以启动Gzip网页压缩,不过能通过几句语法来达到网页压缩,这样不是更好吗?其实在PHP中,有一句语法是可以开启Gzip的,只要加在网页输出的前端即可。
  除此之外,也可以通过.htaccess来调整系统,启动Gzip所需的设定,让网站达到加速的需求,若是可以启动Gzip除了输出时网页比较小,接收者可以很快开启网页之外,也可以省一些流量的耗损,算是不错的功能,但若是主机不支援这些设定选项,那就比较可惜了。
  在WordPress中,其实大部分的缓存插件都有内建启动Gzip压缩功能,不论是老牌的缓存插件WP Super Cache、轻巧的1 Blog Cacher或是hyper Cache都可以启动Gzip网页压缩功能。如果你没有装这些插件,或是这些插件虽然启动了Gzip功能但是检测出来却没有压缩,那你可能需要通过插件GZippy来启动,不过通过这个插件来启动时,记得缓存插件本身的Gzip要关掉,否则可能造成冲突。
  但如果你是很老手的WordPress玩家,那你一定有印象以前在后台管理中有一个是启动网页压缩Gzip的设定选项,不过不知道从哪个版本开始偷偷被拿掉了,不过从资料库内的wp_options资料表内看,一定还会看到一个栏位是gzipcompression,这就是储存Gzip启动的设定值,现在是空的,1表示启动,0表示关闭,但现在就进入资料库修改,似乎是无效了。
  不过在WordPress官方的Codex上面记录了两种启动Gzip压缩的方式,一种是通过PHP函式来启动,另一种则是通过.htaccess文件来启动。如果你不想要使用插件启动也不想使用缓存插件内建的来启动,可以自己加入语法。

利用.htaccess启动Gzip网页压缩
  这方法是通过阿帕契(Apache)的Enabling Compression来达到。请通过FTP将您的.htaccess文件下载回来,如果没有请用记事本建立一个,储存时类型请选择所有文档,然后档名输入.htaccess即可。在.htaccess文件中请加入以下语法,然后储存上传覆盖即可。

  1. <IfModule mod_deflate.c>
  2. # Insert filters
  3. AddOutputFilterByType DEFLATE text/plain
  4. AddOutputFilterByType DEFLATE text/html
  5. AddOutputFilterByType DEFLATE text/xml
  6. AddOutputFilterByType DEFLATE text/css
  7. AddOutputFilterByType DEFLATE application/xml
  8. AddOutputFilterByType DEFLATE application/xhtml+xml
  9. AddOutputFilterByType DEFLATE application/rss+xml
  10. AddOutputFilterByType DEFLATE application/javascript
  11. AddOutputFilterByType DEFLATE application/x-javascript
  12. AddOutputFilterByType DEFLATE application/x-httpd-php
  13. AddOutputFilterByType DEFLATE application/x-httpd-fastphp
  14. AddOutputFilterByType DEFLATE image/svg+xml
  15. # Drop problematic browsers
  16. BrowserMatch ^Mozilla/4 gzip-only-text/html
  17. BrowserMatch ^Mozilla/4\.0[678] no-gzip
  18. BrowserMatch \bMSI[E]!no-gzip !gzip-only-text/html
  19. # Make sure proxies don‘t deliver the wrong content
  20. Header append Vary User-Agent env=!dont-vary
  21. </IfModule>
复制代码

  图例:
1317105792125.jpg


通过PHP启动Gzip网页压缩
  另外一个方法就是通过PHP函式的方式来启动网页压缩,但前提是您的系统必须支持Zlib Compression Functions才有办法启动,您可以丢个网页探针到服务器上查询看看就知道了。语法加入方式很简单,通过FTP连到WordPress根目录,然后下载其中的index.php并使用记事本开启,(网站根目录下的index.php,并非主题中的哦!切记!)添加:
  1. ob_start('ob_gzhandler');
复制代码

成:
  1. <?php
  2. /**
  3. * Front to the WordPress application. This file doesn't do anything, but loads
  4. * wp-blog-header.php which does and tells WordPress to load the theme.
  5. *
  6. * @package WordPress
  7. */
  8. /**
  9. * Tells WordPress to load the WordPress theme and output it.
  10. *
  11. * @var bool
  12. */
  13. define('WP_USE_THEMES', true);
  14. ob_start('ob_gzhandler');
  15. /** Loads the WordPress Environment and Template */
  16. require('./wp-blog-header.php');
  17. ?>
复制代码

  以上两种方法请选择一种使用,设定好后可以通过Gzip检测工具检查看看是否有成功启动啰!

下面是几个测试网站是否启用gzip压缩的网址:
http://tool.chinaz.com/Gzips/Default.aspx
http://gzip.zzbaike.com/
http://www.websiteoptimization.com/services/analyze/
  本站的报告如下:(压缩比例竟然达到了74.6%)
『 5熊猫网 』提醒,在使用本论坛之前您必须仔细阅读并同意下列条款:
  1. 遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规,并遵守您在会员注册时已同意的《『 5熊猫网 』管理办法》;
  2. 严禁发表危害国家安全、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容;
  3. 本帖子由 乐摄宝 发表,享有版权和著作权(转帖除外),如需转载或引用本帖子中的图片和文字等内容时,必须事前征得 乐摄宝 的书面同意;
  4. 本帖子由 乐摄宝 发表,仅代表用户本人所为和观点,与『 5熊猫网 』的立场无关,乐摄宝 承担一切因您的行为而直接或间接导致的民事或刑事法律责任。
  5. 本帖子由 乐摄宝 发表,帖子内容(可能)转载自其它媒体,但并不代表『 5熊猫网 』赞同其观点和对其真实性负责。
  6. 本帖子由 乐摄宝 发表,如违规、或侵犯到任何版权问题,请立即举报,本论坛将及时删除并致歉。
  7. 『 5熊猫网 』管理员和版主有权不事先通知发帖者而删除其所发的帖子。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

© 2002-2025, 蜀ICP备12031014号, Powered by 5Panda
GMT+8, 2025-5-1 07:18, Processed in 0.046800 second(s), 10 queries, Gzip On, MemCache On
快速回复 返回顶部 返回列表