0

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
4

4 に答える 4

0

エラーをデバッグするためにいくつかのことを行うことができます。

  1. サーバーログを確認してください。問題の本当の理由が含まれている可能性があります。
  2. php.iniで「memory_limit」を探します。より高い数を試して、それが問題であるかどうかを確認してください。
  3. 一度に1つのプラグインを非アクティブ化してみてください。1つのプラグインがエラーの原因である可能性があります。
于 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

同じエラーがありますが、解決しました:

http://www.example.com/xmlrpc.phpと入力しましたが、 "www" プレフィックスがある場合は staus cod でリダイレクトされるため、良いのはhttp://example.com/xmlrpc.phpです。

于 2013-11-14T15:47:04.790 に答える