国外设计欣赏网站 - DOOOOR.com

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,微信登陆

搜索

[Drupal优化/SEO/环境] Drupal静态页面缓存利器-再谈Boost模块与Ajaxblocks模块

[复制链接]
发表于 4-20-2012 21:04 | 显示全部楼层 |阅读模式
我们知道,Drupal的Boost模块是Drupal静态页面缓存的必备模块,关于Drupal整体优化,请参考前文《让猪去飞-漫谈Drupal性能优化经验贴》。
3 K$ N2 ]+ n$ G* x6 z4 g  w* _5 B" D) R. q) D
Boost模块只提供匿名用户的静态页面缓存,但多数情况下,我们站点的登录用户访问量也很大,我们需要让登录用户也使用静态页面缓存。这里有一个前提,就是登录用户看到的页面和匿名用户看到的页面比较相似,除了一两个DIV里面会显示登录信息之外。  e7 }& ^' B4 ?0 Z! _0 M

, J- J1 M" ?0 U! p; R+ T7 w  F/ ^$ n" n% N5 a5 ]
如下结构:1 s4 C2 U- s7 w9 k% Q# p# z  B8 ]8 z
________________3 C6 u$ [% g8 S
#login/user-panel#3 U) q  b- V- X( S
________________
7 V* z( G2 G* D" b! h! ]#page-static-body#
1 \. H* k1 D, y% a! v#page-static-body#
! n& E3 a$ q. E& A#page-static-body#; \# i( P1 g% k6 F( h4 i
________________
  |2 ?. o/ p1 Z; y7 S: V* x4 g( k1 ~2 R* t! j
这样,可以把上面的用户信息区作为一个ajax请求,当页面加载之后,然后通过js/ajax获取动态的登录信息。因此就实现了对匿名用户和登录用户同时使用静态页面缓存的效果。具体的操作请参考前文《Drupal性能优化之-将Boost模块用到极致》。
9 @6 h# v( v& j' Q9 D6 Q1 u9 {  \4 [2 z
该文中的方法虽可行,但是由于要使用ajax以及要自定义menu_callback,对于一些快速开发和Drupal Way的开发方式可能并不实用。一般情况下,这种用户信息都是Drupal的Block,所以如果我们能把某些block自动转换为ajax方式的加载,那么会在开发速度和Drupal规范方面带来很好的体验。
2 }1 W5 [/ y6 h+ Y
4 a/ x! d/ I/ c' X% O幸运的是,Drupal已经有了这样一个模块,ajaxblocks,该模块可以把一个普通的Drupal block转换成ajax加载方式,使用方式也很简单,就是在Drupal的block设置页面,可以启用block的ajax加载方式,并且有很多其他选项,比如loading的图标,缓存方式等等。
1 {0 f, z) @: p8 H- \+ c对于一般的前台页面,用Boost模块搭配ajaxblocks模块使用,完全可以让匿名用户和登录用户都能使用Boost的静态缓存,可以大大提高Drupal的性能。0 u# S# J! i* l* T) f
: P) s- k5 ]' x2 k2 L. x0 n9 }
ajaxblocks的使用截图可以参考下图:# P- W& R( j* y; w% S

, s) O# G, h* c% F# _) n% I$ u' k  W0 S# C3 R  _
& C" }3 P2 Y" P# L, @+ ^; |$ M0 M" @

3 ~7 M* a: z( e
但是需要注意的是,要让登录用户也使用静态缓存页面,需要修改Boost提供的相应的Rewrite Rule。
4 Z3 [6 l/ {( K2 H& r因为默认情况下,Rewrite Rule会忽略登录用户。如何修改Rewrite Rule,请参考下面的链接。$ @: j8 K& \! u! v" |+ f6 c2 G& t
4 S3 d# g- F2 J
8 e/ C8 X. B% Z4 H: Y
参考链接:– Drupal性能优化之-将Boost模块用到极致– Ajax Blocks 模块
' J' i* L: |. Y6 q# L+ j  ^1 K( ]+ `2 o6 o7 ?: ~
5 n# z0 G, E- @) q$ C5 D2 ^

! N+ L. O' |& b# u9 p9 y声明: 本站所有文章欢迎转载,所有文章未说明,均属于原创,转载均请注明出处。 本文有效链接: http://www.drupal001.com/2012/01/drupal-boost-ajaxblocks/ 版权所有: Drupal与高性能网站架构 http://www.drupal001.com) j  |8 Q9 {+ P0 I# ^1 E
+ E& I0 P5 _  ^) y' A# d& M0 T# ^
+ G9 J' T) \0 f! s

|2011-2026-版权声明|平台(网站)公约|DOOOOR 设计网 ( 吉ICP备2022003869号 )

GMT+8, 6-16-2025 23:48 , Processed in 0.340454 second(s), 38 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表