2012-04-18 84 views
0

我有幾個帶有unicode內容的博客,只是將它們遷移到新的服務器CentOS - Apache。現在,unicode字體顯示爲垃圾,我不知道哪裏出了問題。即使使用UTF-8,Unicode字體也會顯示爲垃圾

我的wp-config和Apache AddDefaultCharset設置爲UTF-8。不過,我看到垃圾。

順便說一下,相同的服務器在非WP頁面中很好地服務於Unicode內容。但是,三個WP網站都有這個問題。

示例內容: A®...à®'கியநிறமà¯à®Ÿà¯à®¯à®ªà®šà¯ சà¯à®•à¯à®•à®¿à®³à®¿à®¯à¯‡,

My DB details:mysql> show variables like 'char%'; 
+--------------------------+----------------------------+ 
| Variable_name   | Value      | 
+--------------------------+----------------------------+ 
| character_set_client  | latin1      | 
| character_set_connection | latin1      | 
| character_set_database | latin1      | 
| character_set_filesystem | binary      | 
| character_set_results | latin1      | 
| character_set_server  | latin1      | 
| character_set_system  | utf8      | 
| character_sets_dir  | /usr/share/mysql/charsets/ | 
+--------------------------+----------------------------+ 
8 rows in set (0.00 sec) 

請讓我知道我該如何改變它,這樣現有的數據庫內容的編碼還得到改變。

+0

您是否在遷移後檢查了數據庫歸類? – 2012-04-18 15:32:42

+0

這個問題是正確的,但你有更好的機會獲得堆棧溢出的答案,遷移 – Bainternet 2012-04-18 15:33:45

回答

1

您的數據已被錯誤編碼。它的UTF-8數據被解釋爲CP1252。

>>> print u'அழகிய நிறம'.encode('cp1252').decode('utf-8') 
அழகிய நிறம 
+0

如何糾正它? – San 2012-04-18 15:40:41

+0

而解釋發生在?服務器還是db?請幫助我理解。 – San 2012-04-18 15:42:37

+0

使用低級工具,以便您可以看到實際存儲在數據庫中的字節序列;這將幫助你弄清楚你的下一步是什麼。 – 2012-04-18 16:04:33

相關問題