解决wordpress无法离线发布(远程发布)的故障
生活随笔
收集整理的這篇文章主要介紹了
解决wordpress无法离线发布(远程发布)的故障
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用wordpress?mu3.0與3.1時,不知道什么原因,只要開戶了WORDPRESS的MU選項,Zoundry?Raven和Windows?Live?Writer就無法注冊賬戶成功(之前在Zoundry?Raven里建好的賬號還能收發,但不能新建)。在Zoundry?Raven上表現為:輸入BLOG主地址后,能進入下一步,也能自動出來wordpress的API,但填好所有選項后,下一步便報錯了:
“Error?fetching?list?of?blogs”,細節如下:
zoundry.blogpub.xmlrpc.xmlrpcserverimpl.ZXmlRpcException:?{ZBlogServerException['xmlrpcapi.getbloglist'?type:Publishing?Error,?code:0?msg:xmlrpcapi.blog_list_unavailable_error]}
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:267?[_getUserBlogs()]??->??None
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:1217?[_getUserBlogs()]??->??None
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:251?[getBlogs()]??->??None
????at?zoundry\\blogapp\\services\\pubsystems\\blog\\xmlrpc.pyo:13?[_listBlogs()]??->??None
????at?zoundry\\blogapp\\services\\pubsystems\\blog\\blogpublisher.pyo:508?[listBlogs()]??->??None
????at?zoundry\\blogapp\\models\\ui\\wizard\\newpublishersitemodel.pyo:52?[listBlogs()]??->??None
????at?zoundry\\blogapp\\ui\\wizards\\publishersitewizard.pyo:516?[_runTask()]??->??None
Caused?By:
zoundry.blogpub.xmlrpc.xmlrpcserverimpl.ZXmlRpcException:?{ZBlogServerException['xmlrpcapi.getbloglist'?type:Publishing?Error,?code:0?msg:xmlrpcapi.blog_list_unavailable_error]}
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:267?[_getUserBlogs()]??->??None
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:1217?[_getUserBlogs()]??->??None
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:251?[getBlogs()]??->??None
????at?zoundry\\blogapp\\services\\pubsystems\\blog\\xmlrpc.pyo:13?[_listBlogs()]??->??None
????at?zoundry\\blogapp\\services\\pubsystems\\blog\\blogpublisher.pyo:508?[listBlogs()]??->??None
????at?zoundry\\blogapp\\models\\ui\\wizard\\newpublishersitemodel.pyo:52?[listBlogs()]??->??None
????at?zoundry\\blogapp\\ui\\wizards\\publishersitewizard.pyo:516?[_runTask()]??->??None
Thread:?[ZWizardTaskThread]
Thread:?[ZWizardTaskThread]
????干干凈凈安裝了一臺CENTOS,APACHE,PHP,MYSQL,WORDPRESS后
,未出現上述問題。對兩者抓包后發現:
發送的的POST包如下:
POST?/xmlrpc.php?HTTP/1.1
Host:?blog.sjhf.net
Accept-Encoding:?identity
User-Agent:?Zoundry?Raven?(www.zoundry.com);?zpypatch.xmlrpclib.py/1.0.1
Content-Type:?text/xml;?charset=UTF-8
Content-Length:?329
blogger.getUsersBlogs
urn:zoundry.com:raven:pub:xmlrpc:metaweblog:wordpress
admin
********
?
如正確執行,返回值為:HTTP/1.1?200?OK
Date:?Fri,?04?Mar?2011?09:01:47?GMT
Server:?Apache/2.2.3?(CentOS)
X-Powered-By:?PHP/5.1.6
Connection:?close
Content-Length:?641
Content-Type:?text/xml
??
????
??????
??????
??
??isAdmin1
??urlhttp://blog.sjhf.net/
??blogid1
??blogName北亞數據恢復博客
??xmlrpchttp://blog.sjhf.net/xmlrpc.php
??????
????
??
而錯誤的返回結構為:
HTTP/1.1?200?OK
Date:?Fri,?04?Mar?2011?05:54:05?GMT
Server:?Apache/2.2.3?(CentOS)
X-Powered-By:?PHP/5.1.6
Connection:?close
Content-Length:?158
Content-Type:?text/xml
??
????
??????
??????
??????
????
??
仔細研究xmlrpc.php后,發現問題出在_multisite_getUsersBlogs函數上,或者說是_multisite_getUsersBlogs函數在$rpc?=?new?IXR_Client("$...及其后幾句與IXR_Client對象有關的調用上無返回值。
$rpc->query('wp.getUsersBlogs',?$args[1],?$args[2]);?此行代碼甚至不會執行wp.getUsersBlogs這個子函數。
限于時間與能力,暫未進一步研究。直接用RETURN語句替換了。
改動如下:
WORDPRESS?3.0.X中,在/xmlrpc.php,第1604行更改。
WORDPRESS?3.1中,在/wp-includes/class-wp-xmlrpc-server.phpt?1692行前更改:
?$rpc->query('wp.getUsersBlogs',?$args[1],?$args[2]);
//上面一行是原來有的,下面兩行增加
array_shift($args);
return?$this->wp_getUsersBlogs($args);???????
現在測試的結果:3.0.X依然無法執行。稍后再研究?????????????????
附加內容
“Error?fetching?list?of?blogs”,細節如下:
zoundry.blogpub.xmlrpc.xmlrpcserverimpl.ZXmlRpcException:?{ZBlogServerException['xmlrpcapi.getbloglist'?type:Publishing?Error,?code:0?msg:xmlrpcapi.blog_list_unavailable_error]}
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:267?[_getUserBlogs()]??->??None
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:1217?[_getUserBlogs()]??->??None
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:251?[getBlogs()]??->??None
????at?zoundry\\blogapp\\services\\pubsystems\\blog\\xmlrpc.pyo:13?[_listBlogs()]??->??None
????at?zoundry\\blogapp\\services\\pubsystems\\blog\\blogpublisher.pyo:508?[listBlogs()]??->??None
????at?zoundry\\blogapp\\models\\ui\\wizard\\newpublishersitemodel.pyo:52?[listBlogs()]??->??None
????at?zoundry\\blogapp\\ui\\wizards\\publishersitewizard.pyo:516?[_runTask()]??->??None
Caused?By:
zoundry.blogpub.xmlrpc.xmlrpcserverimpl.ZXmlRpcException:?{ZBlogServerException['xmlrpcapi.getbloglist'?type:Publishing?Error,?code:0?msg:xmlrpcapi.blog_list_unavailable_error]}
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:267?[_getUserBlogs()]??->??None
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:1217?[_getUserBlogs()]??->??None
????at?zoundry\\blogpub\\xmlrpc\\xmlrpcserverimpl.pyo:251?[getBlogs()]??->??None
????at?zoundry\\blogapp\\services\\pubsystems\\blog\\xmlrpc.pyo:13?[_listBlogs()]??->??None
????at?zoundry\\blogapp\\services\\pubsystems\\blog\\blogpublisher.pyo:508?[listBlogs()]??->??None
????at?zoundry\\blogapp\\models\\ui\\wizard\\newpublishersitemodel.pyo:52?[listBlogs()]??->??None
????at?zoundry\\blogapp\\ui\\wizards\\publishersitewizard.pyo:516?[_runTask()]??->??None
Thread:?[ZWizardTaskThread]
Thread:?[ZWizardTaskThread]
????干干凈凈安裝了一臺CENTOS,APACHE,PHP,MYSQL,WORDPRESS后
,未出現上述問題。對兩者抓包后發現:
發送的的POST包如下:
POST?/xmlrpc.php?HTTP/1.1
Host:?blog.sjhf.net
Accept-Encoding:?identity
User-Agent:?Zoundry?Raven?(www.zoundry.com);?zpypatch.xmlrpclib.py/1.0.1
Content-Type:?text/xml;?charset=UTF-8
Content-Length:?329
blogger.getUsersBlogs
urn:zoundry.com:raven:pub:xmlrpc:metaweblog:wordpress
admin
********
?
如正確執行,返回值為:HTTP/1.1?200?OK
Date:?Fri,?04?Mar?2011?09:01:47?GMT
Server:?Apache/2.2.3?(CentOS)
X-Powered-By:?PHP/5.1.6
Connection:?close
Content-Length:?641
Content-Type:?text/xml
??
????
??????
??????
??
??isAdmin1
??urlhttp://blog.sjhf.net/
??blogid1
??blogName北亞數據恢復博客
??xmlrpchttp://blog.sjhf.net/xmlrpc.php
??????
????
??
而錯誤的返回結構為:
HTTP/1.1?200?OK
Date:?Fri,?04?Mar?2011?05:54:05?GMT
Server:?Apache/2.2.3?(CentOS)
X-Powered-By:?PHP/5.1.6
Connection:?close
Content-Length:?158
Content-Type:?text/xml
??
????
??????
??????
??????
????
??
仔細研究xmlrpc.php后,發現問題出在_multisite_getUsersBlogs函數上,或者說是_multisite_getUsersBlogs函數在$rpc?=?new?IXR_Client("$...及其后幾句與IXR_Client對象有關的調用上無返回值。
$rpc->query('wp.getUsersBlogs',?$args[1],?$args[2]);?此行代碼甚至不會執行wp.getUsersBlogs這個子函數。
限于時間與能力,暫未進一步研究。直接用RETURN語句替換了。
改動如下:
WORDPRESS?3.0.X中,在/xmlrpc.php,第1604行更改。
WORDPRESS?3.1中,在/wp-includes/class-wp-xmlrpc-server.phpt?1692行前更改:
?$rpc->query('wp.getUsersBlogs',?$args[1],?$args[2]);
//上面一行是原來有的,下面兩行增加
array_shift($args);
return?$this->wp_getUsersBlogs($args);???????
現在測試的結果:3.0.X依然無法執行。稍后再研究?????????????????
附加內容
轉載于:https://blog.51cto.com/zhangyu/526429
總結
以上是生活随笔為你收集整理的解决wordpress无法离线发布(远程发布)的故障的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 这几天惨遭Delphi类型转换折磨,请问
- 下一篇: 忧伤的池塘