« 暑假玩 game 清單?鳥哥的 Linux 私房菜 »

轉換網站伺服器平台:焦頭爛額

2006-06-15 | 作者 Ren [mail] | 分類: Web Site Construction

剛論文口考完,弟弟又再度提起:要把網站伺服器從 WAMP 平台轉換成 LAMP 平台的計畫。依照我的個性,這種事理論上應該要從縝密規劃、謀定而後動,確保轉換的過程順利、結果完美;然而,由於忙著準備口試,就把規劃的任務交代給弟弟,結果發現弟弟比我還懶... ^^" ... 加上妹妹吵著要寫一個養貓的網誌,只好在毫無規劃準備的情況下,邁向平台轉換之路 ~

...

此次轉換平台,其實主要只是將作業系統Microsoft Windows 2000 更換為 Linux,我們採用的是以 Debian Linux 為基礎發展而來的熱門套件 — Ubuntu Linux

ubuntu_logo.png

其他的軟體當然也要改採 Linux 版,不過版本號碼上就有些變化了...

設定檔部份:

  • Apache (照 Win32 版修改)
    • /etc/apache2/apache2.conf
    • /etc/apache2/sites-available/ (for virtual hosts)
    • /etc/apache2/mods-available/userdir.conf
  • PHP (照 Win32 版修改)
    • /etc/php5/apache2/php.ini
  • MySQL (稍後提到)
    • /etc/mysql/my.cnf

但是移轉既有網站的過程就相當艱辛了... 一開始是碰上檔案權限設定錯誤,不過這還算小問題;比較頭大的是 MySQL 資料庫內容的轉換,相當不順利 — 原本使用 UTF-8 編碼的網站內容,利用 phpMyAdmin 從舊版 MySQL 4.0.26 匯出後,在匯入新版 MySQL 5.0.21 之後,全部變成亂碼... =__=|||

為了解決資料庫轉換的問題,上網找了一下解決方法,才知道:MySQL 4.0.x 以前都是以 latin1 編碼來處理、存放資料 (即使交付給它的原始資料是 UTF-8 編碼!) 如果要升級 MySQL 至 4.1.x 以上版本,必須依照下列步驟才能正確轉換資料庫內容:

  1. 將資料庫內容以 latin1 編碼匯出,假設儲存成檔案 db.sql。
  2. 將 db.sql 內容轉換成 UTF-8 編碼。
  3. 新的 MySQL server 加入下列設定後,再將 db.sql 匯入:

[client]
default-character-set = utf8
[mysqld]
init-connect = 'SET NAMES utf8'
default-character-set = utf8
default-collation = utf8_general_ci
[mysql]
default-character-set = utf8

堐過了 MySQL 的折騰之後,終於讓部落格復活了 ~ 但是 XOOPS 網站和 IPB2 討論區運作上卻依舊有問題,原因在於上述兩個架站套件對於 PHP5 的支援度尚未完滿... =__=|||
所以「轉移尚未成功,兄弟仍須努力」啦 ~

參考資料:

Permalink

沒有回應