Kenming’s Wiki 開放了!

原本就有計畫將我對軟體設計的許多心得與見解等寫成書籍出版。

平常一有想法及心得時,我可以很快地寫成單篇文章發表在我的 Blog 上。基本上,發表於 Blog 的文章是比較屬於隨性、未經修飾過的,相對地,也比較不會有心理的壓力。

但是,當打算寫一本比較完整架構的書籍時,說真的,光要構思如何先建立書籍的骨架,亦即書籍的目錄時,就傷透腦筋~ 瞻前顧後,想要表達得更加完整與周詳,就更難去動筆。(其實,這些還是心態問題,完美主義作祟)

嘿,現在有了 Wiki 這種概念的呈現,可就大大解決了我許久以來的這些困擾了。

原本以為 Wiki 是屬於多人共筆的功用而已,沒想到,原來 Wiki 被用在出版平台的建構也是非常地理想。

關於書籍寫作的方式,我漸漸有一些體會了。不一定要先建立完整的骨架(目錄結構),先有個雛形架構即可。然後,可以把目錄上的標題成為寫文章的主題,寫文章同時,可能又有另外的想法,是與原標題不一樣的,結果又衍生另一篇文章出來。此時,反而是先寫出文章內容才倒推回去整理出目錄標題來。

所以,目錄的標題與內容的寫作,不一定有絕對的先後順序,而是以循環漸進的方式來做修正與整理。這也正是軟體開發最重要的一個實務—Iteration。

而 Wiki 平台,正是能提供作者隨時隨地,只要上網透過瀏覽器,就可以很快速地來整理與修正書籍的目錄結構與編輯文章內容的最佳利器。(Wiki 有很獨特的寫作語法可以方便文章的排版)

同時,還有個好處,可以在實體書籍出版前,可以先讓讀者閱讀並可以提供建議與討論。循環漸進、回饋與修正,讓書籍架構與內容可以更加地完整,這正是我最大的收穫! :p

所以,若對爾後在我的 Wkiki 平台所寫的電子書有所建議時,歡迎可以在本篇文章給予迴響。或者,也可以參考我在 Wiki 公佈欄的訊息,欲加入 Wiki 的讀者,可以 email 給我您的帳號以方便全程參與文章內容的討論。(很抱歉,因個人的 Wiki 並未是開放成多人共筆的方式,所以,為了安全性,只好採人工 email 認證的措施)

Kenming’s Wiki 網址:
http://www.hsdc.com.tw/wiki/

{Linux 架站三雄}Apache + MySQL + PHP 安裝備忘錄

在 Linux 系統下,無論你安裝各種類型的應用系統,如 XOOPS、Blog、Wiki、Open-Source Project …等,幾乎不脫離最主要的三種基礎建設平台 ~ Apache + MySQL + PHP。

我個人所使用 Linux 版本為 Fedora Core 3。應該算是最普及、最容易安裝的 Linux 版本了。
安裝完後,上述三種基礎平台也跟著完裝完畢。不過,因為是以 RPM 的方式來安裝與升級系統,有利有弊,安裝與設定容易,但客製化的程度會比較沒有彈性,而且往往尚未提供最新的版本。

我也決定讓我的基礎平台可以支援 UTF-8 的環境,所以 MySQL 需升級為 4.1.X 的版本,而 PHP 也必須由內建 3.2.X Library 改為可以連結 MySQL 4.1.X 的 Library。同時,也為了更有彈性讓 Apache 支援 PHP,所以,我把 Apache 與 PHP 由 RPM 安裝的方式,將之移除,並下載最新版本(Apache 為 2.0.53;PHP 下載 4.3.10)手動編譯。
不使用 PHP 5.X 的原因是擔心應用系統如 XOOPS 或 Blog 會產生相容性不符的情況,所以仍使用 PHP 4.X 的版本。
至於 MySQL,因為官方網站即提供最新有支援 RPM 安裝的版本,所以在安裝上甚為方便。

如何安裝,最好是參考 Apache and PHP 官方網站的文件。在此僅是個人的安裝備忘紀錄,並不是完整而詳細的安裝步驟。

  1. 下載 MySQL 4.1.10 RPM版本,利用 RPM 方式升級 MySQL 系統。
  2. 移除 Apache and PHP 的 RPM 版本。
  3. 下載 Apache 2.0.53 and PHP 4.3.10 的原始碼版本。
  4. Compile Apache(底下指令為連續的一行):
    • ./configure –prefix=/usr/local/apache2 –enable-mods-shared=most –ena
      ble-rewrite –enable-so
    • make
    • make install
  5. Compile PHP(底下指令為連續的一行):
    • ./configure –prefix=/usr/local/php4 –with-apxs2=/usr/local/apache2/bin/apxs –wi
      th-mysql=/usr –with-mysqli=/usr/bin/mysql_config –with-mysql-sock=/var/lib/mysql/mysql.sock –enable-mbstri
      ng
    • make
    • make install
  6. 確定安裝與編譯過程沒有發生錯誤,如此即可完成基礎平台的安裝

再來,就是要做一些設定,如,設定 Apache 的 Virtual Host、設定 php.ini 等。最好能做一些測試以及相關資訊的檢查。
我是利用 phpmyadmin,若可以正確設定好 phpmyadmin,同時就可以知道 apache 的設定是否正確,並且也同時藉由連結 MySQL 資料庫以檢查 MySQL 的設定與 PHP 版本等相關資訊。

我的 blog 系統,是採用 b2evolution 0.9.0.11 並由 Jimmy 所提供的中文語系所安裝而成的,它本身即支援 utf-8 編碼,所以我從 Windows-based 的環境,只要將其目錄透過 Samba copy 至 Linux 的目錄下(我是 copy 至 /var/www/html/blogs),幾乎不用任何設定即可完成 blog 平台的移轉。
至於如何匯入(import)原先所備份的資料?我發現到,使用 phpmyadmin 並不保險,因為有容量上的限制與編碼的問題,很容易會轉成亂碼的情況發生。我是在 Linux 命令列模式下來執行匯入的動作:

    mysql –user=db_user_name –password=db_user_password db_name < ur_import_data.sql

至於 XOOPS,原先我在 windows-based 是安裝 big5 版本。因為很容易有衝碼情況問題產生(許功蓋的問題),加上 MySQL 4.1.x 以上總算有支援 utf-8 的編碼,所以我是下載在 XOOPS 正體中文延伸計畫所提供的 utf-8 的最新版本:2.0.9.2 utf-8 正體中文版。

注意的是,因為有許多外掛模組是使用 big5 所編碼而成的版本,若要能在 utf-8 XOOPS 系統下正常執行、沒有亂碼,需先轉換為 utf-8 的版本。
我是利用 ConvertZ 來自行手動將 big5 模組轉碼為 utf-8 版本。
ConvertZ 的作者可真不錯,提供如此優質又免費的轉碼工具!

安裝的過程,必須熟悉 Linux 系統操作。這點我幾乎是完全陌生,除了邊做邊看文件,最好能有高手協助你。

我很幸運,認識 william,他透過 telnet 模式(正確地說是利用 ssh client) 連線進來我的系統幫我做設定、編譯等等。同時又透過 msn 回答我許多對於設定及原理不瞭解的問題。
真的很感謝他!! 我欠他兩客西堤牛排。

還有,Linux 很好玩,真的很有趣。
一切都是免費,又能提供這麼多免費的好咚咚。
我已經認真在思考 Linux + OpenSource + Enterprise Service 的整合方案。看來對企業的應用系統等在成本與穩定性、實用性等的考量與應用會有很大的經濟價值。

開放 HSDc. Portal 網站

HSDc. 軟體設計專業中心的 Portal 網站已重新開放。
之前已註冊過的會員不需重新註冊,可以直接以原先申請的帳號與密碼登入。

網址:http://www.hsdc.com.tw

整個網站已重新架設過,包括重新安裝 XOOPS2 UTF-8 繁體中文版、安裝最新的模組(包括功能更形強大的討論區模組)、全新的版面...等。

由於整個系統重新更換過,原先舊有的資料尚待重新整理過。
主要先提供 HSDc. 的最新課程與講座訊息等資訊,同時也可以讓會員在討論區發表問題與討論。

細部的規劃,仍持續調整中。

【架站硬碟毀損】系統緊急移轉至 Linux 平台!

原在 Windows Server + IIS 上執行的應用系統,因硬碟毀損,已無法還原。

Blog 等應用系統現轉移至 Linux 平台下:

  • Linux Fedora Core3
  • Apache Web Server 2.0.53
  • MySQL 4.1.10
  • PHP 4.3.10

目前 Blog 系統已大部分回復至原先狀態。尚剩 “Mindmaps”、”My Album” 等資料尚未移轉,預計今晚可以移轉成功。

至於 XOOPS2 系統,尚須做一些系統設定與調整,預計仍須兩天的時間才能完成資料移轉。

不便之處,尚請見諒!!

{安裝備忘錄}解決 xoops2 無法在 IIS 執行的問題

參考:http://www.xoops.org/modules/smartfaq/faq.php?faqid=313

在 Windows-based(2003 or XP) + IIS Server 的環境下安裝 XOOPS,會出現空白網頁或者當執行升級程式,進入管理畫面後出現 “所選擇的模組不存在(selected module does not exist)”。
這是由於 XOOPS 預設所執行的 Web 系統為 Apache,而 Apache 與 IIS 所處理的一些伺服器環境變數(Server Variables)是不同的。
解決方式如下:

In common.php, replace the line:


    $xoopsRequestUri = $_SERVER[ 'REQUEST_URI' ];

with :

    $xoopsRequestUri = $_SERVER[ 'SCRIPT_NAME' ];
軟體思維顧問

專職軟體輔導與教育訓練的獨立顧問。輔導企業資訊單位如何有效組織系統開發與維護;輔導開發人員達成有效的專業分工。傳授如何把軟體作軟 (Keeping Software Soft)的技能,得以提昇系統的彈性/延展,並進而創造系統的再利用價值。

Personal