2006年9月25日 星期一

我猜是 cache_lite 的 bug

上週五升級完 LifeType 1.1 之後,看似一切正常,然後,漸漸地,一些文章、迴響的中文開始變成問號 (???) ,在抓問題時,發現了一個奇怪的事情。

在確認了 config file 、 db connection 都是跑 utf8 字集,而且升級後的資料庫內容也是正確的 utf8 編碼內容、以及沒有任何 sql_error.log 之後,我開始懷疑 LifeType 1.1 是不是有還沒被發現的重大 bug ?但是沒理由只有我遇到啊?經過一番 trace ,我懷疑到用來實作 Object Cache 的 cache_lite 程式庫頭上。

更新到 LifeType 1.1

終於將本站的 LifeType 更新到 1.1 版了。

原本更新過程蠻順利的,但是愈用卻愈奇怪,文章及迴響的中文字漸漸變成一堆問號 (???) ,但又不是每個地方都有一樣的問題?

先做更新記事及待辦事項,免得忘記。再寫另一篇文章記錄中文問號的問題吧。

2006年9月15日 星期五

[修正]解決V-webmail寄出郵件的主旨亂碼

開始試用 V-webmail 時,第一件令人困擾的事,就是寄出去的信件,中文的郵件主旨都會變成亂碼。經過一番追查找到問題所在了,追根究底,都是一些老問題,老外寫的程式,對東方語系總有考慮不周的地方。

在寄出信件的部份, V-webmail 使用 HTML Mime Mail class 做為 SMTP client 。在 google 這個 class 時,發現這個 class 似乎還蠻有名的,很多 PHP Base web AP 都用它做為 SMTP client 的樣子。這個 class 本身不是造成亂碼的問題,而是 class 內部是以 ISO-8859-1 做為建立郵件時的預設字集。而 V-webmail 的寄信程式 email.compost.php 裡面,只替純文字的郵件本文設定了使用語系檔裡的字元集設定,所以 header 部份還是以預設的 ISO-8859-1 做編碼,於是乎,別的 email client 讀信時便以錯誤的方式解碼檔頭的中文訊息,標題和寄件者、收件者裡的中文名字等就遭殃了。

解決的方法如下:

[語系]試做UTF-8的 V-webmail 環境

我是很想把 webmail 改成完全 utf-8 的環境,這樣可以一舉解決 Big5 的亂碼問題,還可以像 GMail 一樣,繁簡中文、多國語言的郵件通吃。無奈,留在 mailbox 裡的 Big5 信件太多,別人寄來的信件又以 Big5 為大宗,所以還是算了。

不過,我試過了,在 V-webmail 裡面,要做成全 UTF-8 的操作環境非常簡單,只要幾個步驟就完成了。先記下來,以後也許會用到:

[語系]V-webmail的Big5繁體中文語系檔完成

花了點時間把剩下的外部郵件相關訊息給翻譯完了,目前打包成 tarball 放在這裡:lang.big5.tar.gz,歡迎使用,並請提供意見。

目前已經回報給 V-webmail 官方的 bug tracker 了 ( issue 118 ) 。

同樣是使用 Mantis , V-webmail 並沒有提供 reporter 上傳檔案的權限,目前是留個連結到我的 blog 資料夾。

接下來記一下中文化的做法:

2006年9月13日 星期三

V-webmail實驗室開張

最近伙伴 huihui 對我之前為學校安裝的 SquirrelMail 不太滿意,主要是對國家資通安全會報技術服務中心 ( ICST ) 寄來的資安訊息通告內容全部都成了亂碼,無法閱讀。

於是找時間重新再看了一些以前曾經試用過的 webmail ,包括 NOCCIlohaMailuebimiau (一直連不進去) ,看了看還是不太滿意。後來又再搜尋一下,找到了一個國人幾乎沒在使用,但卻十分令我驚豔的 V-webmail 。跟小松鼠比起來,不僅畫面漂亮多了,郵件的亂碼問題也沒了,操作上也更直覺。在 FireFox 裡,甚至還可以用右鍵選單直接做郵件的管理 ( 跟 IE 的相容性比較差一點,相信是針對 FireFox 在 UI 方面做了最佳化)。