Joomla - 輕鬆架設企業入口網站

1、前言

以下前言內容引用來源為 TaiwanJoomla - 提供 Mambo / Joomla 架站軟體中文化支援 - Mambo/Joomla的介紹


Mambo 是什麼?

Mambo是一套在國外相當知名的內容管理系統 (CMS,Content Management System),屬於 Business Portal (企業入口網站) 類型。一般人對內容管理系統可能會有以下的別名來稱呼:
  1. 架站程式(或軟體)
  2. 快速架站程式(或軟體)
  3. 整站程式

Mambo 是使用 PHP 語言加上 MySQL 資料庫所開發的系統。可以使用非常多的外掛功能元件 (約有8百多種),讓網站上的應用更豐富。另外 Mambo 有很獨特的佈景樣版系統,可以讓你設計與眾不同的網站外觀。這也是 Mambo 在這個市場最為人津津樂道的一個優點。

Joomla! 又是什麼?

Joomla 是 2005 年 8 月份由原 Mambo 開發小組及協力社群,獨立於 Mambo 計劃之外,分裂出來的新計劃。當然有關於內部的紛爭與意見不合,由於 Miro 公司有推動 Mambo 在商業上的計劃。與原先開發小組的方向不同。新計劃取名 Joomla!,在土話中有 "團結合作" 的意思。目前 (2005 年 10 月) Joomla! 發佈的 1.0.x 版本與 Mambo4.5.2 版本內容相差無幾。未來還需觀看其發展與變化。

Mambo 的歷史

Mambo 軟體最早在 2001 年 5 月份由澳洲 Miro 公司所開發,由於 Miro 公司有商業化的考量,原先發佈並採用 GNU/GPL 授權的軟體版本,在版本 3.0.5 之後就不再支援。後來由 Robert Castley (現已離開核心小組) 接手後續的開發原始碼版本,並招募新的志願者。Mambo 現行的版本為 4.5.1 版本,其中整合了許多新的網站技術,以符合未來大型網站的需求。

Mambo 開放原始碼的版本在 2004 年獲得 Linux User & Developer Award 2004 的「Best Linux or Open Source Software」獎項,自此大放異彩,在架站軟體界帶動了新風潮。Mambo 2005 年 8 月後由 Miro 公司接管所有開發的工作,並重新招募新的開發小組成員。另外由前開發小組領導人 Eddie Andrew 帶領 20 名核心小組,分裂新的計劃稱為 Joomla!。

Mambo 4.5.1的技術規格如下:

  • 開放原始碼程式
  • 具有大型且健全的使用及開發社群
  • 有針對註冊用戶提供簡單的文件審核等級
  • 線上說明文件
  • 網頁快取機制,可以提升忙碌網站的效能
  • 資源管理功能
  • 廣告管理(廣告看板功能…其它)
  • 媒體(圖片、檔案)上傳與管理功能
  • 內容顯示排程功能
  • 內容聯合供稿(RSS)
  • 適合於搜尋引擎連結技術(SEF)
  • 多國語言化(介面)
  • 內容巨集語言技術(又稱作mambots)
  • 進階及分離式的管理系統
  • 進階的套件/附加程式/樣版佈署系統
  • 簡單但功能強大的樣版系統(大部份是以HTML碼撰寫,沒有複雜的樣版式語法需要先學習,只有一些PHP的宣告碼需要加進去)
  • 階層式的用戶存取群組
  • 簡單的訪客統計功能
  • 支援多種所視即所得(WYSIWYG)內容編輯程式
  • 簡單的投票功能
  • 內容評等系統





文章目錄

1、前言
2、實作環境
3、安裝及設定
          步驟1.安裝 joomla
          步驟2.建立 joomla 資料庫
          步驟3.更改 joomla 目錄權限
          步驟4.啟用 PHP mb_string 擴充模組
          步驟5.開始安裝 joomla
4、參考
5、Me FAQ
          Q1.MySQL 編碼設定為 UTF-8 但 joomla 無法安裝資料庫?
          Q2.joomla 安裝後網站用 utf8/big5 都是亂碼?





2、實作環境

  • FreeBSD 6.0-RELEASE-p4
  • Joomla 1.0.7
  • apache+mod_ssl-1.3.34+2.8.25_3
  • php4-4.4.2_1
  • mysql-server-4.1.18





3、安裝及設定

本次實作只著重於說明安裝 Joomla 部份,關於 Apache、PHP、MySQL 安裝部份請參考站內文章 Mysql Apache PHP-黃金架站組合

步驟1.安裝 joomla

切換至 Ports Tree 路徑安裝 joomla 套件。
cd /usr/ports/www/joomla        //切換到安裝路徑
make install clean               //安裝並清除暫存檔案

安裝後可看到提示訊息告知您可參照 INSTALL.php 查看詳細安裝 Joomla 步驟。
********************************************
Please read INSTALL file. It can be found at:
/usr/local/www/joomla/INSTALL.php
********************************************

目前 Ports Tree 內安裝的語系只有英文版,當然您可以選用由熱血朋友修改後的 UTF-8 中文版 下載 Joomla 1.0.7 繁簡體中文 UTF-8 版



步驟2.建立 joomla 資料庫

鍵入如下指令建立名為 joomla 的資料庫以便後續設定步驟將 joomla 安裝於此資料庫中。
/usr/local/bin/mysql -u root -p     //進入 MySQL
 Enter password:                         //輸入 MySQL 管理者密碼
 Welcome to the MySQL monitor.  Commands end with ; or \g.
 Your MySQL connection id is 2 to server version: 4.1.18
 Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 mysql> CREATE DATABASE joomla;       //建立名為 joomla 的資料庫
 Query OK, 1 row affected (0.00 sec)     //系統顯示建立 Database 成功
 mysql> exit                            //離開 MySQL
 Bye




步驟3.更改 joomla 目錄權限

更改 joomla 目錄權限 (Web Service 可讀取) 以便後續設定步驟使用 Web 方式安裝時出現問題。
chown -R www /home/web/joomla       //將資料夾擁有者改為 www



步驟4.啟用 PHP mb_string 擴充模組

mbstring 是 Joomla 中文版所必備的函式庫,這個函式庫裡的許多函式是用來處理有關中文的 BIG5 / GB2312 / UTF-8 編碼之間的轉換,使用 php -m 來確定系統中 PHP 是否安裝 mb_string 擴充模組。
php -m
 [PHP Modules]
 bz2
 ctype
 gd
 mbstring        //PHP mb_string 擴充模組
 mcrypt
 mysql
 openssl
 overload
 pcre
 pdf
 posix
 session
 standard
 tokenizer
 xml
 zlib

確定有安裝 PHP mb_string 擴充模組後我們必須啟用 mbstring 函式庫,修改後記得重新啟動 Web Service 使變更生效。
vi /usr/local/etc/php.ini-dist   //修改 php 設定檔
 ;extension=php_mbstring.dll      //預設值
 extension=php_mbstring.dll       //修改後 




步驟5.開始安裝 joomla

開始安裝 joomla 請連結至您的 joomla 目錄開始系統設定。

步驟5-1.選擇安裝語系

1. 預設語系為英文。


2. 請選擇語系為正體中文。


步驟5-2.joomla 安裝前檢查

綠色訊息檢查 OK 的部份,紅色部份則是有問題部份。

1. 若剛才前面未執行步驟 3 去更改 joomla 目錄權限的話便會出現警告訊息,系統告知說 joomla 將可能因無法寫入 configuration.php 而造成安裝失敗。


2. 您的系統已準備好相關設定請繼續安裝步驟


步驟5-3.joomla 建議設定值

joomla 建議設定值,系統將顯示其建議值 (ON 或 OFF) 也顯示您目前系統的設定值。


步驟5-4.joomla 目錄與檔案權限

綠色訊息檢查 OK 的部份,紅色部份則是有問題部份。

1. 若剛才前面未執行步驟 3 去更改 joomla 目錄權限的話便會出現警告訊息 (如左下圖) 系統告知說 joomla 無法寫入相關目錄會造成安裝失敗。


2. 您的系統已準備好相關設定請繼續安裝步驟。


步驟5-5.joomla 授權規定

joomla 授權規定看過沒問題後就按下一步繼續安裝吧。


步驟5-6.MySQL 資料庫設定

請填入安裝 joomla 的主機名稱、資料庫管理者帳號、資料庫管理者密碼、資料庫名稱 (此例為剛才建立的 joomla),填妥相關資訊後按下一步繼續安裝。


步驟5-7.網站名稱設定

請輸入您用 joomla 所建立的網站名稱,填妥相關資訊後按下一步繼續安裝。


步驟5-8.檢查主機網路資訊

檢查 joomla 主機相關資訊,例如:主機的 URL、實體主機內目錄路徑、通知的 E-Mail、後台管理者密碼,確定相關資訊無誤後按下一步繼續安裝。


步驟5-9.joomla 安裝完成

1。恭喜您順利完成 joomla 安裝!! 但為了網站安全性著想系統建議您將 installation 目錄移除。


2. 若您未移除 installation 目錄而按下【觀看站台】連結來立刻體驗 joomla 威力的話系統仍然會貼心的告訴您請先移除 installation 目錄。


步驟5-10.joomla 後台管理登入頁面

移除 installation 目錄後按下【管理區】或輸入後台管理 URL (ex. http://www.weithenn.org/administrator) 即可看見如下登入畫面。






4、參考






5、Me FAQ

Q1.MySQL 編碼設定為 UTF-8 但 joomla 無法安裝資料庫?

Error Message:
MySQL 版本為 4.1.x 明明支援多國語系,但 joomla 卻說無法安裝資料庫並顯示錯誤訊息如下:
SQL=Specified key was too long; max key length is 1000 bytes:
Ans:
因為 MySQL 用 UTF-8 編輯的話每個 character set 會變為 3 Bytes ,所以就爆掉啦 (max key length is 1000 bytes)。使用 latin1 編碼的話,每個 character set 預設為 1 Byte 這樣就不會爆掉了。
vi installation/sql/sql_traditional_chinese/joomla.sql  //修改 joomla.sql
 CREATE TABLE `core_acl_aro` (
 `aro_id` int(11) NOT NULL auto_increment,
 `section_value` varchar(240) NOT NULL default '0',
 `value` varchar(240) NOT NULL default '',
 `order_value` int(11) NOT NULL default '0',
 `name` varchar(255) NOT NULL default '',
 `hidden` int(11) NOT NULL default '0',
 PRIMARY KEY (`aro_id`),
 UNIQUE KEY `section_value_value_aro` (`section_value`,`value`),
 KEY `hidden_aro` (`hidden`),
 KEY `mos_gacl_hidden_aro` (`hidden`)
 ) TYPE=MyISAM;                               //預設值
 ) TYPE=MyISAM,DEFAULT CHARACTER SET latin1;  //修改後,採用 latin1 編碼





Q2.joomla 安裝後網站用 utf8/big5 都是亂碼?

Error Message:
joomla 裝好後只有英文部份是 ok 的,中文部份都爛掉切換成 UTF-8 / Big5 都一樣?


Ans:
因為 MySQL 4.1.x 版在安裝 Joomla UTF-8 版本的時會產生亂碼,所以要讓寫入資料庫時確定是使用 SET NAMES 'utf8',修改完成後您必須重新執行一次剛才安裝 joomla 的步驟:
vi includes/database.php    //修改database.php大為102行位置
 //@mysql_query("SET NAMES 'utf8'", $this->_resource);   //預設值
 @mysql_query("SET NAMES 'utf8'", $this->_resource);     //修改後