梦想 就像鸡蛋
要么孵化 要么臭掉
要么孵化 要么臭掉
辞旧迎新,上UTF-8
Made In Zeal 转载请保留原始链接:http://www.zeali.net/entry/315
一直以来想把这个Blog从GB2312改到UTF-8编码,但因为pivot采用的文本数据库使用PHP的serialize存档方式,数据结构依赖于字符串长度,一旦从GB2312改到UTF-8,非英文字符串的长度就发生了变化,原有的日志读取将发生错误。日志一天天增多,编码切换可能的潜在危险就让我越来越不敢去做这件事情了。
昨天终于咬咬牙,决心彻底搞定这个问题,算是给自己新年带来的第一个新气象吧。写GB2UTF8的批量日志文件编码转换脚本、更新语言文件/模板文件、增加新的UTF-8相关的字符串处理函数,一切在本地机器上测试相当顺利。没想到覆盖到服务器上的时候居然出现莫名其妙的问题,页面没法正常重新生成。用ftp维护上传文件是件痛苦的事情,经过几个小时的折腾,终于是“暮然回首”,在pivot站点上发现了db repair的工具可以轻松的解决问题,修复升级之后被局部破坏的数据文件。
总算大功告成,两点教训:
- 覆盖之前一定要在服务器上备份目录,而不是只在本地备份!不同环境下的备份即便只是简单的copy,也可能存在差异性。没有服务器Shell登录的权限,也可以想办法用PHP的passthru之类的系统命令调用来曲线执行Shell命令。
- 碰到问题最好先到官方站点找找答案。看似简单的问题可能会越变越复杂,不如在自己给自己设套之前看看是不是有更简单现成的解决方法。
This Entry was Last Modified on 2007-05-28 11:59
没有评论.
发贴统计

我的地盘