2014-10-20 101 views
6

我使用wp_remote_post發佈一些信息,以這樣的wp_remote_post返回的SSL連接的錯誤

$url = 'https://example.com/path/file.json';  

wp_remote_post($url, array(
    'sslverify' => false, 
    'timeout' => 60, 
    'body'  => $body, 
)); 

安全連接,但我得到一個錯誤:

SSL: CA certificate set, but certificate verification is disabled 

我雖然sslverify設爲false應該防止呢?

如果我設置sslverify => true它的工作原理,但可能會導致其他服務器

下面是完整的wp_error對象問題:

WP_Error Object 
(
    [errors:WP_Error:private] => Array 
     (
      [http_request_failed] => Array 
       (
        [0] => SSL: CA certificate set, but certificate verification is disabled 
       ) 

     ) 

    [error_data:WP_Error:private] => Array 
     (
     ) 

) 

也許這是相關的,但在Apache 2.2它的工作原理,而在Apache 2.4它不」 t

+0

有同樣的問題......我認爲這是由於一些CURL/PHP更新? – 2014-10-29 16:44:41

+0

您是否正在運行OS X? – 2014-10-29 16:45:06

+0

是的,OSX 10.10和本地開發 – Xaver 2014-10-29 16:56:40

回答

1

看起來像你的Apache 2.2和2.4配置是不同的。在2.4上,你可能已經將SSLVerifyClient設置爲required,這會導致它像你所描述的那樣行事。你需要將它設置爲none: http://httpd.apache.org/docs/current/mod/mod_ssl.html#SSLVerifyClient

+0

如何更改此設置? – Xaver 2014-11-11 11:03:28

+0

它應該在httpd.conf文件中:httpd.apache.org/docs/2.0/ssl/ssl_howto.html#accesscontrol – Yavor 2014-11-11 17:59:03