Trackback乱码:我的解决方法
昨天ZoomQuiet大哥在Trackback完我的帖子后又发了一顿牢骚:
你的 TB 实在是对 GB2312 不识别哪!
赶紧处理一下子是也乎!让MT 也真正国际化吧!
呵呵,这个就是广泛存在于中文Blog上“著名”的Trackback乱码问题——由于Trackback协议并没有考虑不同编码(Charset)的Blog之间发送Trackback Ping需要转换编码而造成的。
我用了一个“诡计”部分解决了这个问题,欢迎大家帮忙测试——向我开Ping ^_^
从目前的情况来看,作为Trackback协议的缔造者MovableType直到他们目前最新版本的MT 3.1中仍然是我行我素… @_@ 看来靠他们解决是不可行的了。国内虽然也有一些人提出可以修改标准TrackBack协议,增加编码设置的方式解决,但是几乎没有Blog程序实行,也是一纸空文。
在目前协议不变的情况下解决这个问题主要考虑两个方面的因素:发送方和接收方。如果任何一方能够主动/被动的根据另一方改变发送/接收内容的编码,即告成功。
我的大学毕业设计实现的Doulog就在这两方面解决了这个问题:发送方可以选择发送的编码;接收方提供多编码的Trackback地址供发送方选择。我今天把其中接收方的部分拿出来改写一下,为MT做了一个Trackback网关,欢迎大家帮忙测试。如果看起来问题不大的话,我将公开源码。
TODO:
目前转码暂时使用的是iconv库,所以不支持iconv的PHP主机可能用不了。不过我Doulog实现中实际使用的是我自己写的编码转换Douconv库,虽然效率要低一些,不过大家都可以用,最终版本的时候我可以都加上供大家选择。MT是用Perl写的,但是我确实不怎么会写Perl的程序呢,所以只好用PHP写了这么一个网关,最好的方法还是哪个牛人用这个方法给MT写一个插件。最后我现在只是实现了一半,即接收方,发送方暂时还是欠奉…
刚刚又想起来一点,其实Trackback还有Auto-discovery的功能,我这个解决方法就不可能实现了,正道还是在接收方加上自动编码识别功能… @_@
附: 前车之鉴
消除收到trackback的乱码乱码 From 竹笋炒肉
Trackback对中文世界是一种考验 From 投笔从戎亦有时…
September 22nd, 2004 at 8:12 am
呜乎哀哉!
使用 GB2312 方式 TB :::
有错!….
An error occurred: 1 Need a Source URL (url).
September 22nd, 2004 at 8:23 am
嗯嗯!没有办法引用,就在原来处进行了说明去看:
http://www.originclub.net/zoomquiet/nublog/index.php?itemid=274
ps.
文无第一,武无第二!
技术方面让我们互为老师吧!别大来大去的是也乎!。。。
September 23rd, 2004 at 9:00 am
嘿嘿^我改了很久搞不定,后来干脆,只把ping我的URL取回来,其他不要了.没办法的办法啊,人太消极了,哈哈.
October 30th, 2004 at 5:06 pm
希望能看到源代码。
November 7th, 2004 at 12:29 am
对不起,引用通告发的太多了,发傻了:(
September 22nd, 2004 at 10:51 pm
[NO TITLE]
[NO EXCERPT]
November 7th, 2004 at 12:22 am
TrackBack乱码,没有安装Text::Iconv模块的解决办法
近日一直被MT引用通告乱码所困扰,虽然Google到了Hedong的消除收到trackback的乱码文章,还有Windix的Trackback乱码:我的解决方法。但一由于我的空间上没有安装CGI的Text::Iconv模块,二Windix并没有
November 7th, 2004 at 12:22 am
TrackBack乱码,没有安装Text::Iconv模块的解决办法
近日一直被MT引用通告乱码所困扰,虽然Google到了Hedong的消除收到trackback的乱码文章,还有Windix的Trackback乱码:我的解决方法。但一由于我的空间上没有安装CGI的Text::Iconv模块,二Windix并没有
November 7th, 2004 at 12:27 am
TrackBack乱码,没有安装Text::Iconv模块的解决办法
近日一直被MT引用通告乱码所困扰,虽然Google到了Hedong的消除收到trackback的乱码文章,还有Windix的Trackback乱码:我的解决方法。但一由于我的空间上没有安装CGI的Text::Iconv模块,二Windix并没有
March 1st, 2005 at 5:51 pm
http://leench.vicp.net/blog/leenbook/guestbook.php
March 1st, 2005 at 6:12 pm
test
chinaese
March 1st, 2005 at 6:39 pm
中文
中文
April 21st, 2005 at 8:46 pm
UUZONE
UUZONE