使用Drupal开发的网站,通过 Boost 模块可以针对匿名用户将页面静态化,修改一些配置也可以实现登录用户静态化,但静态化后,Boost 模块自定义的规则比较有限,难以满足要求。在网站中大家应该都使用到 ImageCache 来生成缩略图片,但是如果 Boost 时间过期后,就会将已生成的缩略图片删除,这其实是不需要的;否则用户访问时,又会重新生成,这不是又占用宝贵的服务器资源,有没有办法可以在 cron 运行时不删除呢,那么请出 Boost Custom Expire Rules 模块。 这个模块比 Cache Expiration 模块更加灵活,使用起来稍复杂点,看看下面的配置例子吧:
{"name": "nodetype", "expire": 3000000, "type": "page"}
{"name": "nodeage", "expire": 700000, "to": 3000000}
{"name": "nodeage", "expire": 100000, "from": 3000000, "to": 700000}
{"name": "nodeage", "expire": 14400, "from": 700000, "to": 100000}
{"name": "nodeage", "expire": 3600, "from": 100000}
{"name": "path", "expire": 3600, "path": "taxonomy/term/*"}
{"name": "path", "expire": 3600, "path": "blog"}
{"name": "path", "expire": 1200, "path": ""}
上述配置具有下列功能(一天时间近似为100000秒)):
page 内容类型缓存30天
基于节点的更新时间缓存其他内容类型
缓存节点超过30天为一周
缓存更新时间为7-30天间的节点为1天
缓存更新时间为1-7天间的节点为4小时
缓存超过一天的节点为1小时
缓存 taxonomy/term 页1小时
缓存 blog 页面1小时
缓存首页20分钟