用drupal开发网站的时候,经常会遇到白屏(WSOD,White Screen Of Death)。 白屏的原因,有很多种,其中一种是缓存中表项内容错乱所引起的,下面就介绍此原因对应的解决办法:清除缓存表项。
; o3 h2 E) f, v2 j0 e1.当白屏的时候,有时候是可以进入主页的。如果可以进入主页,安装了devel模块+Administration menu模块的情况下,是可以通过 鼠标移动到左上角->Flush All Cache,去清除所有缓存,或者Flush All Caches -> Cache Tables,只清除表项的缓存,来试图解决白屏的问题。
# w4 A; v" G- b1 E, L7 P2.但是很多时候,白屏的时候,是连主页也进入不了的,所以就要想别的办法去实现清除表项。 % n1 d- `/ B+ w9 |, F0 T" T
此法有老外已经整理了: Clearing Drupal's cache to recover from WSODs
7 v3 B& Q9 z, `, N9 ?简单翻译和整理如下(假定你是用的PhpMyAdmin来管理MySQL数据库的): 1.登陆PHPMyAdmin 2.左边那一列中,找到你当前drupal网站所使用的数据库,并点击之。
) b' _6 Q l: A/ x# o; b4 m
! s: L3 }, f0 m1 H4 A
3. 数据库的表项会在左栏显示,找到“cache”并点击之。
& {) i- G. `$ W0 |: s" G- ]

# i) {# e( x/ o' q6 K0 B
4. 在cache表中的项就会在右边主页面中显示了。在页面顶部右上角有个“Empty”: 7 u# h3 c: ~& h* e
 1 Z/ a! Y0 P7 |2 R
意思是清空(缓存)。点击“Empty”,会弹出对话框问你是否真的想要清空(数据库操作中对应的是TRUNCATE),点击“确定”。
$ q. x" Y# L o; [, j' A: I+ S0 A% Z
 + W8 \2 d$ x2 s6 ?1 A2 h" V# a7 h. d
5. 此时就可以清除表项的缓存了。回到你的浏览器中,重新多刷新几次页面,(如果是缓存表项错乱所引起白屏的话),那么此时你可以可以看到你的drupal网站又可以正常显示了,^_^。
: a1 F& p. X! u |