聽起來像你的Drupal緩存已損壞。
直接的解決方案是清除緩存。清除Drupal緩存的三種方法:
使用管理員密碼登錄網站,並從菜單中選擇flush caches選項。這顯然只有在您首先能夠進入該網站時纔有可能。
如果您不能這樣做,您可以使用Drush命令行實用程序清除兌現而無需轉到該網站。
如果你甚至不能讓Drush工作(或者你只是不想安裝它),你可以通過訪問你最喜歡的MySQL工具中的數據庫並清空所有表其名稱以「cache_」開頭。
真正的問題是爲什麼這會發生在第一位。可悲的是,我不能回答,沒有lot有關您的設置的更多信息(並可能花費一些時間調查)。
危險之處在於,即使您清除了緩存之後,也可能會再次出現相同的錯誤,因此即使您再次使用該緩存,也應該仔細研究一下,看看您是否可以找出根本原因。
我的猜測會是一個有錯誤的rouge模塊,它會將錯誤的數據寫入緩存。你可能想要檢查drupal站點和Google來檢查你正在使用的模塊,看看是否有任何報告過類似的行爲。另外,你提到了一個PHP更新:請讓我們知道你從哪個版本的PHP去和去。在PHP 5.3中有一些Drupal 6模塊存在已知的問題,儘管核心支持它。有關更多信息,請參閱http://drupal.org/requirements。
這是從數據庫中走出來嗎?在升級過程中,序列化字符串中可能會出現一些額外的字符。正如@Udo G所說,最好在這裏發佈'var_dump($ cache-> data)'的結果。 – Treffynnon 2011-04-11 15:46:15
見:http://stackoverflow.com/a/10152996/1226894 – Baba 2012-10-03 15:18:46