今天在使用windows live write发表博客时,报:无法连接到您的日志服务:服务器响应无效 – 从日志服务器接收的对 blogger.getUsersBlogs 方法的响应无效:Invalid response document returned from XmlRpc server 请尝试解决问题,然后重试。”
经查找相关资料,发现问题出现的根本原因是因为WordPress本身的一个BUG。在utf-8编码下,xml-rpc返回的格式不正确,缺少了三个字节。要修正这个问题,操作如下:
a) 找到class-IXR.php文件(注意:wordpress2.9之前的版本,文件名可能是chass.ixr.php),该文件位于博客根目录wp-includes文件夹下,然后用一个文本编辑工具打开它(推荐使用editplus);
b) 查找到以下语句:
$length = strlen($xml);
将其替换为:
$length = strlen($xml)+3;
注意:以上方法针对wordpress2.9之后的版本,在wordpress 2.9之前的版本中没有class.ixr.php 文件,而是叫chass.ixr.php文件。它其实是WordPress升级后将chass.ixr.php 文件变成了class-IXR.php。不论哪种版本,按照上面的解决办法修改class-IXR.php/或chass.ixr.php文件,问题很容易就解决!
本文转自 烂泥行天下 51CTO博客,原文链接:http://blog.51cto.com/ilanni/1372380