0

当我尝试在 wordpress 中使用 xmlrpc 上传数据时出现错误。以前的代码可以正常工作,但突然间开始出现此错误。我没有更改代码中的任何内容。

错误 (-32300):传输错误 - HTTP 状态代码不是 200

另外,我知道我的脚本有效,因为谷歌浏览器在 GET 请求上返回“正常”状态。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
4

4 回答 4

0

您可以做一些事情来调试错误。

  1. 查看服务器日志,也许它们包含问题的真正原因。
  2. 在 php.ini 中查找“memory_limit”。尝试更高的数字,看看是否是问题所在。
  3. 尝试一次停用一个插件,可能是一个插件可能导致错误。
于 2013-01-13T18:41:11.030 回答
0

我收到了同样的错误,最后我发现原因是我在.htaccess(XML-PRC服务器端)启用了这样的代码;我自己被屏蔽了。

order deny,allow
deny from all
allow from 211.111.0.0/16

托管“ http://example.com/xmlrpc.php ”的服务器被阻止发布脚本 IP 源。

你应该:

  1. 将 XML-RPC 客户端脚本 IP 添加到 XML-PRC 服务器端;甚至同一站点中的客户端和服务器。
  2. 或者干脆从.htaccess
于 2013-09-12T23:45:47.517 回答
0

如果上述解决方案均无效:

确保您没有被托管服务提供商列入白名单。我们的客户使用 wp-engine,我们在发布媒体项目时遇到了这个确切的问题。

在不同 IP 的外部网络上发出相同请求后,我们得到 200(OK)状态码。

于 2015-03-23T23:14:50.903 回答
0

我有同样的错误,但我解决了:

我输入了http://www.example.com/xmlrpc.php但好的是http://example.com/xmlrpc.php因为如果它有“www”前缀它会用 status cod 重定向

于 2013-11-14T15:47:04.790 回答