web-dev-qa-db-ja.com

ssl://プロトコル付きのwp_remote_post

    $response = wp_remote_post( 'ssl://securesite.com', array(
        'method' => 'POST',
        'body' => $string, // variable is set
        'timeout' => apply_filters( 'http_request_timeout', 15),
        'sslverify' => true
    ));

    error_log(print_r($response, TRUE));

    if ( is_wp_error($response) ) {
        return FALSE;
    }

    $result = wp_remote_retrieve_body($response);

結果はエラーです。

[30-Aug-2011 21:53:53] WP_Error Object
(
[errors] => Array
    (
        [http_request_failed] => Array
            (
                [0] => Unsupported protocol: ssl
            )

    )

[error_data] => Array
    (
    )

)

Fsockopenを使用してfgetsを実行すれば、すべてうまくいきます。

Sslはwp_remote_postによって処理されるべきなので、文書化されていないトリックが欠けているようです。

2
Dan Cameron

どこから "ssl://"を有効なプロトコルとして入手しましたか?

代わりに "https://"で試しましたか?

1
Otto

これはWP自体から来るエラーではないようですが、おそらくWPがネットワーク要求に対して最初に選ぶことを好むcurlによって生成されます。

私はあなたのホスティングや他の場所で手でcurlを使って要求を複製しようとします。

あなたが他の方法でネットワーク要求をすることに満足しているならば、あなたはWPが輸送としてカールをスキップするように微調整して他のオプションのために行くことができる。

1
Rarst