当我尝试在wordpress中使用xmlrpc上传数据时出现错误。用于工作正常的代码,但突然出现这个错误。我没有改变代码中的任何内容。
错误(-32300):传输错误 - HTTP状态代码不是200
此外,我知道我的脚本有效,因为Google Chrome在GET请求中返回'ok'状态。 php.ini分配了128mb的内存。
以下是用于发布帖子的代码
/**
* Make Posts using the XMLRPC classes
*/
function makePosts() {
$data_set = $this->getMovieLinks();
$xml_client = new XMLRPClientWordPress();
foreach ($data_set as $key) {
echo '<pre>';
echo 'This is title movie about to be added ======== : ' . $key['title'];
echo '</pre>';
//new_post($title,$summary,$category,$image_url,$internal_links)
if ($xml_client->new_post($key['title'], $key['summary'], $key['category'], $key['image'], $key['internal_links']) ) {
$status=1;
} else {
$status=0;
}
if (isset($status)) {
echo ' ====== ADDED';
} else {
echo ' ====== ERROR ADDING';
}
}
} // Function makePosts endes here
答案 0 :(得分:0)
您可以做一些事情来调试错误。
答案 1 :(得分:0)
我收到同样的错误,最后我发现原因是我在.htaccess
(XML-PRC服务器端)启用了这样的代码;我被封锁了。
order deny,allow
deny from all
allow from 211.111.0.0/16
托管“http://example.com/xmlrpc.php”的服务器在脚本IP源后被阻止。
你应该:
.htaccess
答案 2 :(得分:0)
我有同样的错误,但我解决了它:
我键入了http://www.example.com/xmlrpc.php,但好处是http://example.com/xmlrpc.php,因为如果它有“www”前缀,则会重定向到staus cod
答案 3 :(得分:0)
如果以上解决方案均无效:
确保您未在托管服务提供商上列入白名单。我们的客户使用wp-engine,在发布媒体项目时我们遇到了这个问题。
在外部网络,不同的IP上发出相同的请求后,我们得到了200(OK)状态代码。