LifeType 中文開發論壇

支援 => 安裝與設定 => 主題作者是: derekhsu 於 三月 01, 2005, 11:33:08 下午



主題: 一個網頁同時存在兩種語系?
作者: derekhsu三月 01, 2005, 11:33:08 下午
Mark你好,為了要安裝mantis,所以要把PHP4跟Apache都各自升級為PHP5跟Apache 2,所以原來的plog 0.32就不能用了,只好升級到1.0。

我昨天也有遇到之前所說Session而造成不能登入的問題,不過經過Check Out最新版的Plog已經解決。但是現在又發現一個新的問題:

我的blog在http://derekhsu.homeip.net,現在出現一個很奇怪的情況,這個網頁用Unicode看的時候,Template的部分顯示正常,Content的部分則都是亂碼,當我切到big5語系的時候,Content的顯示就會正常,但Template的部分就變成亂碼。

可是我之前在Plog 0.32的時候,全部都使用UTF-8看,都完全沒有問題。請問這是怎麼回事?是我的問題還是bug呢?

我使用的平台如下:
Windows Server 2003 Enterprise
Apache 2.0.58
PHP 5.0.3
MySQL 4.1.8

謝謝。


主題: 一個網頁同時存在兩種語系?
作者: markwu三月 01, 2005, 11:43:41 下午
能請你查兩個資料嗎?

1. 這些文章在 Admin 頁面中有正常顯示嗎?如果有....那就是 index 在輸出時的編碼問題  :-(

2. 假設沒有正常顯示!那能請你再查一下這些文章在 mysql 中的編碼,是 UTF-8 還是 Big5 嗎?

Mark


主題: 檢查結果
作者: derekhsu三月 01, 2005, 11:57:46 下午
引用自: markwu
能請你查兩個資料嗎?

1. 這些文章在 Admin 頁面中有正常顯示嗎?如果有....那就是 index 在輸出時的編碼問題  :-(

2. 假設沒有正常顯示!那能請你再查一下這些文章在 mysql 中的編碼,是 UTF-8 還是 Big5 嗎?

Mark

你好,檢查結果如下:
問題1:這些文章在Admin中也沒有正常顯示
問題2:我在PHPMyAdmin中檢視的結果,採用Unicode編碼,並沒有問題,PHPMyAdmin中有個連線校對的選項是big5_chinese_ci,不知道有沒有關係?

有需要的話我可以給你我的PHPMyAdmin的帳號。

補充一下,剛才看了一下我的RSS Feed,我發現全部的Content編碼都變成big5,這真奇怪,這是我MySQL設定的問題嗎?可是我MySQL的設定沒有動過,完全跟0.32版一樣說


主題: 一個網頁同時存在兩種語系?
作者: markwu三月 02, 2005, 12:28:18 上午
這問題好像跟這一篇 http://forum.lifetype.org.tw/index.php?topic=47.0&start=15&postdays=0&postorder=asc&highlight= 有關。

請問你除了 php 升級到 5.x, apache 升級到 2.x,是不是 mysql 也從 4.0.x 升級到 4.1.x?

你原本的 4.0 的 table encoding 是 latin1, big5 還是 utf-8? Pest patch 了一個自動判斷 DB 編碼的機制,他特別強調這個地方有可能會出錯。

假設你的 DB 原本在 4.0 時的編碼是 latin1. 請你搜尋

class/database/adodb/drivers/adodb-mysql.inc.php 裡面把

程式碼:
/** hack to adodb **/
.......
......
/** end of hack **/


換成

程式碼:
mysql_query("SET NAMES latin1", $this->_connectionID); 


或是

程式碼:
mysql_query("SET NAMES big5", $this->_connectionID);


試試!測試前請先 restart mysql 一次。

Mark


主題: 的確是這兩個地方的問題
作者: derekhsu三月 02, 2005, 01:59:32 上午
Mark兄您好:
問題的確在那兩個地方,我把它改成utf8,Blog的閱覽已經完全正常,看來未來的版本這裡可能要注意一下了吧。
 :-)
我並沒有更換Database,我之前的環境是用Appserv建起來的,資料庫一直都是4.1.8-nt,沒有換過,語系一直都是utf8。

接下來我還測試了一下feed,發顯有幾個問題。
1.用RssReader跟NewsGator抓下來所有的RSS Link都是正常的,不會抓到亂碼。
2.用bloglines去抓我的RSS2.0,RSS 1.0,ATOM,會抓錯語系,變成亂碼,只有RSS 0.9是正常的

這一點很奇怪....因為之前的0.32版沒有這方面的問題。

很晚了,明天再研究吧。


主題: Re: 的確是這兩個地方的問題
作者: markwu三月 02, 2005, 11:36:04 上午
引用自: derekhsu
問題的確在那兩個地方,我把它改成utf8,Blog的閱覽已經完全正常,看來未來的版本這裡可能要注意一下了吧。


所以你是改了 set names utf-8 了?

引用自: derekhsu

接下來我還測試了一下feed,發顯有幾個問題。
1.用RssReader跟NewsGator抓下來所有的RSS Link都是正常的,不會抓到亂碼。
2.用bloglines去抓我的RSS2.0,RSS 1.0,ATOM,會抓錯語系,變成亂碼,只有RSS 0.9是正常的


這部分很怪,麻煩你試試再回報。因為他們是用同一段程式所產生,所以不應該會有這樣的問題。你能把 plog/tmp 下的cache全刪了,再試試嗎?

Mark


主題: 要等我回家再試了
作者: derekhsu三月 02, 2005, 02:27:20 下午
這個部分要等我回家再試了。
我回家再搞這個吧 :-D


主題: 新版的測試結果
作者: derekhsu三月 02, 2005, 10:00:11 下午
Markwu你好:

我回家之後測試新版的結果是這樣子的

昨天那個/** hack to adodb **/的問題依然存在,依照您昨日給的方法修改後輸出已經正常,而第二個問題bloglines抓錯編碼的問題,在新版本中也沒有問題了。還是這是我砍掉/tmp內容重抓的關係?

沒關係,除了昨天的那個問題之外,其他還沒有遇到什麼問題。

我再來慢慢玩吧! :-D


主題: 一個網頁同時存在兩種語系?
作者: markwu三月 03, 2005, 10:44:03 上午
好!加油!有問題在 po 上來討論吧。

Mark