氣質出眾的開放源碼CMS – Drupal
處於日前這個知識經濟爆炸的時代,個人、企業需要處理更新的內容與日劇增,過往繁複的內容處理流程,隨著時間與組織的成長,讓太多過時、錯誤的內容無法及時更新,以難以正確挖掘長久累積的資訊,找出並修正過往資料。 CMS 正是為此問題而衍生,並提供全面的解決平台。包含了完整的內容管理流程,從友善、簡易的內容創作介面,經由散布、刊登到最後的彙集與管理,以及客制 化的網站管理架構,內容刊登的呈現模式,以及使用者的導覽方式等。筆者在此與各位分享一套以PHP開發的開放源碼CMS — Drupal.
Drupal
Drupal(droo-puhl)是荷蘭語“druppel”的發音,英語意指微量、簡潔的意思。其原始碼 版權宣告採用GNU GPL。秉持著協同、標準化、開放源碼、高品質、容易使用、模組化彈性設計及低資源需求為設計宗旨。目前的版本有三個分支(4.5.x、4.6.x以及 4.7.x),相對軟體的支援程度如下表: (表1)
作業系統
所有版本皆相容於BSD、GNU/Linux與Windows。
PHP程式語言
4.5.x版本:必需使用PHP 4.1以上版本。
4.6.x版本:必需使用PHP 4.3.3以上版本。
4.6.x版本:必需使用PHP 4.3.3以上版本。
Apache網頁伺服器
所有版本皆支援Apache 1.3.x及2.0.x版本。
資料庫
所有版本皆支援MySQL 3.23.17以上版本,也相容於MySQL 4。但對於MySQL 5的支援上仍存有一些問題。所有版本皆支援PostgreSQL 7.3以上版本。
Drupal也提供了完整的線上手冊,若欲深入研究,可參考官方網站(http://drupal.org/)或台灣中文支援站(http://tw-drupal.info/)。 國內外已有相常多的文章、論文與著作,討論如何評估與分析CMS。諸如以小中型企業為主的《Open Source Content Management Systems for Small and
Medium-Sized Enterprises》<註一>,或是中大型企業為主的《How to evaluate a content management system》<註二>。從簡單的幾項分析項目到複雜至極的數學矩陣<註三>皆有,端視個人與組織的需求而定。 嚴謹的評比,必需考慮組織架構、目標,或管理人員與技術人員等面向。在本文中,僅以程式開發者的角度,簡化繁雜的分項評比,提供常用的分析項目,並說明Drupal在此項目上見長的特性。
1.中文支援
目前仍有許多開放源碼軟體並未針對中文進行額外處理。諸如中文化介面的翻譯、中文字串搜尋的問題等。若需要對此軟體作事後中文修正,則需付出更多的人力成本。 Drupal在其原始碼底層直接以UTF-8設計,以解決多國語言上的問題,也能夠處理繁體中文的搜尋問題。中文化介面的翻譯上,也有熱心的社群<註四>提供中文化的版本。
2.效能
執行效能對於營運的正常運作有顯著的影響,如何以最低資源成本,最快的處理速度,發揮至可接受的程度,也是評估上常見的議題。 Drupal使用Apache、PHP與MySQL/PostgreSQL建置而成,在速度與穩定性上,已為許多企業所青睞並採納。在資源成本上,相較於plone官方網站建議至少1GHz處理器與512MB記憶體而言<註五>,在硬體需求上較小。
3.安全性
筆者在此探討狹義的安全性,即專注於CMS本身的軟體層面上。網路上充斥著SQL injection與XSS(Cross Site Scripting)等攻擊,對於網站的永續經營、顧客資訊與敏感文件的保護帶來衝擊。這個問題視該開放源碼軟體在開發過程中,對於輸入驗證等安全項目關心的程度。 Drupal對於安全性有較嚴謹的態度,相較於其他開放源碼CMS而言,至今發現的安全漏洞較少,而且其開發者與擁護者眾多,使得臭蟲與安全回報制機上較完備。
4.維護性
維護性泛指擴充性、人力資源與平台轉移等,這些都是組織會考慮的項目。組織採用開放源碼軟體時,往往會擔心軟體終止開發、未來功能擴充需求、技術人員難尋或將來平台轉移等問題。 Drupal 擁有相當多的擴充模組、樣版及元件可直接套用。在技術上,採用了Smarty Engine,使得程式與內容分開管理,對自行開發擴充套件上,提供了很大的彈性。在人力資源上,Apache、PHP與 MySQL/PostgreSQL等,在台灣擁有廣大的社群與使用者,開發、維護上的任職或外包上較不成問題,而隨著組織發展需要將內容轉移至其他平台,也有其相對應的程式或模組可用。
開始安裝Drupal
在安裝Drupal前,請讀者確定環境已有GNU/Linux或BSD等作業系統,並且已經安裝好Apache、PHP及MySQL等必需之軟體。筆者的建置環境如下:
(表2)
作業系統
FreeBSD 6.0
網頁伺服器
Apache 2.0
程式語言
PHP 4.4
資料庫
MySQL 4.1
CMS
Drupal 4.6.6
目前Drupal繁體中文版僅提供4.6.0以及4.7.0兩個版本。Drupal 4.6.0版本有嚴重的安全漏洞,而4.7.0尚在測試階段。因此,筆者建議若要求穩定性為主,則選擇4.6.6穩定的英文版本;若要求中文化介面為優 先,則可選擇4.7.0繁體測試版,待正式版釋出後再行更新亦可。
第一步:下載原始碼
取得Drupal軟體原始檔<註六>後,解開至Apache網頁內容目錄下。GNU/Linux常見的目錄是/var/www/html,FreeBSD則是/usr/local/www/data。
(指令) tar -zxvf drupal-4.6.6.tar.gz mv [...]
Filed under: 資訊多媒體 | 2 Comments »