当前位置: 首页 > 图文教程 > 网页制作 > CMS技巧 > Drupal教程:启用缓存和Gzip压缩

CMS技巧
Zblog帮助:模板文件与模板标签
Joomla教程:模板覆盖方式修改系统输出
Joomla教程:为Joomla插件创建语言包
Joomla教程:文章页面中显示指定的模块
Joomla教程:控制Section中的分类列表页面的显示方式
Joomla教程:mod-rewrite是否真的被开启
在Joomla自定义HTML模块组合使用Google小工具
Joomla教程:本地搭建的Joomla站点发送邮件
Joomla教程:在Who is online模块中显示用户名
dedecms教程:栏目页面转换为单独页面
CMS可用性测评:帮助找到适合自己的内容管理系统
Joomla中文教程:构建多重站点
Joomla教程:在templateDetails.xml中添加语言文件声明
Joomla教程:为页面和模块添加独立的自定义Class
Joomla教程:为“read more”链接添加对应的文章标题
Joomla教程:查看并修改模板的CSS
Joomla中文教程:创建并使用插件对文章内容进行修改
Joomla教程:网站首页第一次加载时播放一次Flash动画
Joomla教程:禁止未分类文章被站内搜索
Joomla教程:去掉分类文章列表中的文章序号

CMS技巧 中的 Drupal教程:启用缓存和Gzip压缩


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-03   浏览: 97 ::
收藏到网摘: n/a

Drupal4.x/5.x时代的性能问题在drupal6得到了非常大的提升.
但是还有有更进的一步的性能优化:对页面和静态资源的启用缓存和Gzip压缩传输.

Gzip现今已经成为Internet 上使用非常普遍的一种数据压缩格式,或者说一种文件格式。HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术。大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度。

可以期望:一些压缩比率高的内容如html页面,css,javascript等文本文件在服务器端压缩后,传送给客户端(浏览器),并在客户端以极快速度完成解压缩,并交给浏览器渲染页面和解释脚本.
在这一个过程中,极大地节省下载时间.而对此需要付出两个代价:
1.服务器端压缩消耗CPU资源
2.客户端解压缩消耗用户电脑的少量资源.

据说drupal7会提供Gzip压缩功能,可惜至少在目前drupal6.x的时代,我还享受不到这个功能. 但是,我们可以自己做.

1.合并,缓存

Drupal6常规的性能设置(Site configuration - Performance)中可以提升大量的性能:
Caching mode - 选择"Normal (recommended for production sites, no side effects)"
Page compression - 选择"Enabled"
Block cache - 选择"Enabled"
Optimize CSS files - 选择"Enabled"
Optimize JavaScript files - 选择"Enabled"

至此,
页面启用了压缩;
css文件和js文件都被合并到了一个文件里面,同时去除了文件中多余内容(空白,换行,制表符等).

2.启用Gzip压缩

打开includes/common.inc:找到:
file_save_data($data, $csspath .'/'. $filename, FILE_EXISTS_REPLACE);
在下面增加一行:
file_save_data(gzencode($data,9), $csspath .'/'. $filename . '.gz', FILE_EXISTS_REPLACE);
找到:
file_save_data($contents, $jspath .'/'. $filename, FILE_EXISTS_REPLACE);
在下面增加一行:
file_save_data(gzencode($contents,9), $jspath .'/'. $filename .'.gz', FILE_EXISTS_REPLACE);