一、整個安裝過程十分簡單,就如INSTALL.txt中所述,由於我要讓網站全部采用UTF-8編碼,因此需要特殊的做以下幾步:
1、修改 include/database.MySQL.inc,大約在33行處增加代碼:
@MySQL_query("SET NAMES UTF8;");
它的作用是讓PHP程序在整個數據庫操作過程中,均采用UTF-8編碼來傳輸數據,保證數據的編碼不會因為不兼容等原因出問題。
2、修改 database/database.MySQL,在每個建表的SQL語句後面,增加內容:
“ DEFAULT CHARSET=UTF8”
這是為了讓數據表的字符集為UTF8,使得數據存儲在該類型的表中不會因為不兼容等原因出問題。
在以後的模塊安裝、升級過程中也需要注意到該問題。
做了這2步操作之後,基本上系統支持UTF-8是沒問題了。
二、接下來再說說程序調試的過程:
由於以前的運行環境都是PHP4,因此程序每任何問題,無需調整,但是目前的這個主機空間由於使用了PHP5.1.x,因此有些特性不支持或者發生變化,其中有:
sites/default/settings.php 文件中的$base_url,由於PHP5.1.x環境下的IE浏覽器中得不到 $_SERVER['HTTP_HOST'] 變量,因此會有問題,就改成了:
$base_url = isset($_SERVER['HTTP_HOST']) ? 'http://'. $_SERVER['HTTP_HOST'] : 'http://iMySQL.cn';
另一個地方是 str_replace 函數,在php5.1.x和php4及PHP5.0.x下以下代碼運行的結果是不一樣的:
$copy=str_replace("{$v}","$var",$copy);
的作用是想把 "{title}" 這樣的模板代碼替換成 "標題",在 php5.1.x中不能正確執行,它把 "{"轉義成 "{" 了,因此結果還是 "{title}",而php4和PHP5.0.x則能正確地替換成 "標題"
目前只發現了這2個地方有問題,故此提出來,有想安裝drupal-4.6.5版本的朋友請先注意這幾個問題了。