與其說 Drupal 功能強大有彈性,倒不如說因為有太多玩家為其開發各類功能的模組 (modules),而使得網站的客製化 (customization) 與個性化大幅提昇。 例如 View, CCK 等重量級的模組,很難想像若不安裝這兩個基礎模組,Drupal 網站該如何運作設定啊。
為了讓網站功能更形強大多樣化,網站管理者往往需要安裝到數十個之多的模組。 說實話, Drupal 的模組設計,個人覺得甚為不欣賞。 雖然它有很大的優點是容易開發,且容易與核心 (kernel) 整合;但模組與模組之間的相依性 (dependency)太重了,會因模組的更換而連動影響到相關連的模組,而導致這些模組所提供的功能並不穩定。更甚者,大版本的更新,如從 4.X, 5.X, 6.X, 7.X 等的升級,所有模組均無法順應升級到下一大版,只能重新安裝支援該版本的模組,這實在相當不合理。
上述是題外話,算是對 Drupal 開發一個小小地抱怨 (當然,更期許的是,Drupal 的結構設計能更形有彈性,那可就相當完美了)。
現在較頭痛的一個問題是,安裝了太多模組後,效能與穩定性往往會被影響到。 以我來說,目前安裝了近 20 個模組,雖然功能尚稱穩定,不過常常會遇到在管理頁安裝某些模組後,就停滯在該網頁運轉許久,然後就出現 空白頁 (Blank Page),使得我經常需要去資料庫刪除掉該安裝的模組,移除掉該模組檔案,再重新開啟模組管理頁,再重新試著安裝……,實在令人困擾。
這一類的問題,當然就是要透過 Google 找 How-to Solution 了,或者應該是要至 Drupal 的官方網站論壇找尋答案了。 這裡: The White Screen of Death (Completely Blank Page)。 整理了許多引起 Blank page 的可能原因與建議的解決方案。