Serendipity中文乱码解决方案 (1)
简介:
Serendipity是一个用PHP+MySQL开发的非常出色的Blog程序*,拥有众多的特性和功能:界面简单、功能强大的编辑界面、用户评论、多级分类、反垃圾功能、多插件、Trackback and Pingback、国际化语言支持、超强兼容性(兼容XHTML、CSS、RSS、ATOM等)等。
在当前最新版的Serendipity (v0.8.4)中,支持如下两种中文简体编码:“Simplified Chinese (GB2312)”和“Simplified Chinese (UTF-8)”。
在当前最新版的Serendipity (v0.8.4)中,有2处编码选项设定:一是在“Administration->管理设定->一般设定->语系”(此为全局编码设定),一是在“Administration->管理作者->作者/编辑->语系”(此为用户编码设定)。以下所有关于编码编辑/修改的地方,均指需要同时修改这2处的编码选择。(注意,因为翻译的原因,此处“语系”和“编码”是同一个意思)
问题/现象:
如果界面编码选择“Simplified Chinese (GB2312)”,用户会发现Blog主界面等中文显示都很正常,但所有聚合页面(RSS等)都是乱码。
解决方案(2种):
1. 如果是新安装的话,界面编码选择“Simplified Chinese (UTF-8)”,则一切正常了。
2. 如果用户设定的界面编码是“Simplified Chinese (GB2312)”,并且在此状态下发表了多篇文字,那么,首先要把MySQL数据库内的内容编码进行一次转换操作(从GB2312转换到UTF-8),然后把Serendipity的界面编码选择为“Simplified Chinese (UTF-8)”,则一切正常了。
如何进行MySQL数据库内容编码的转换?参见文章“关于GB2312/Big5中文WordPress站点向UTF-8的转换”。其实操作非常简单,就是在phpMyAdmin数据转换时,“导出时用gb2312/big5 (zh/zh-tw),导入时用 zh-utf-8/zh-tw-utf-8。”
[补充说明*] 在建立qingqing.us网站的Blog的时候,Deminy曾对网上流行的几套基于PHP的Blog程序(国产程序除外)作过简单的评测,初步认定Serendipity是这几套程序当中最棒的。
(接下篇“Serendipity的RSS中文乱码解决方案 (2)”)
[补充说明1] 本文原名为《Serendipity的RSS中文乱码解决方案 (1)》,现更名为《Serendipity中文乱码解决方案 (1)》,以便和后续类似文章的命名统一起来。另,本文比较古老,所述内容(以后)可能过时。2006-06-22 20:06:21
[补充说明2] 如欲浏览更多关于Serendipity的使用、维护信息,请参考《网志程序Serendipity中文维护个人文集》一文。2007-07-15 14:23:19
Serendipity是一个用PHP+MySQL开发的非常出色的Blog程序*,拥有众多的特性和功能:界面简单、功能强大的编辑界面、用户评论、多级分类、反垃圾功能、多插件、Trackback and Pingback、国际化语言支持、超强兼容性(兼容XHTML、CSS、RSS、ATOM等)等。
在当前最新版的Serendipity (v0.8.4)中,支持如下两种中文简体编码:“Simplified Chinese (GB2312)”和“Simplified Chinese (UTF-8)”。
在当前最新版的Serendipity (v0.8.4)中,有2处编码选项设定:一是在“Administration->管理设定->一般设定->语系”(此为全局编码设定),一是在“Administration->管理作者->作者/编辑->语系”(此为用户编码设定)。以下所有关于编码编辑/修改的地方,均指需要同时修改这2处的编码选择。(注意,因为翻译的原因,此处“语系”和“编码”是同一个意思)
问题/现象:
如果界面编码选择“Simplified Chinese (GB2312)”,用户会发现Blog主界面等中文显示都很正常,但所有聚合页面(RSS等)都是乱码。
解决方案(2种):
1. 如果是新安装的话,界面编码选择“Simplified Chinese (UTF-8)”,则一切正常了。
2. 如果用户设定的界面编码是“Simplified Chinese (GB2312)”,并且在此状态下发表了多篇文字,那么,首先要把MySQL数据库内的内容编码进行一次转换操作(从GB2312转换到UTF-8),然后把Serendipity的界面编码选择为“Simplified Chinese (UTF-8)”,则一切正常了。
如何进行MySQL数据库内容编码的转换?参见文章“关于GB2312/Big5中文WordPress站点向UTF-8的转换”。其实操作非常简单,就是在phpMyAdmin数据转换时,“导出时用gb2312/big5 (zh/zh-tw),导入时用 zh-utf-8/zh-tw-utf-8。”
[补充说明*] 在建立qingqing.us网站的Blog的时候,Deminy曾对网上流行的几套基于PHP的Blog程序(国产程序除外)作过简单的评测,初步认定Serendipity是这几套程序当中最棒的。
(接下篇“Serendipity的RSS中文乱码解决方案 (2)”)
[补充说明1] 本文原名为《Serendipity的RSS中文乱码解决方案 (1)》,现更名为《Serendipity中文乱码解决方案 (1)》,以便和后续类似文章的命名统一起来。另,本文比较古老,所述内容(以后)可能过时。2006-06-22 20:06:21
[补充说明2] 如欲浏览更多关于Serendipity的使用、维护信息,请参考《网志程序Serendipity中文维护个人文集》一文。2007-07-15 14:23:19
添加新评论
友情提醒:您的言论自由在本站会得到充分保证;不过,由于广告留言等猖獗,因此本站的内容过滤系统有可能会暂时屏蔽您新发的留言或评论。不便之处,希望理解。