2014-10-20 16 views
6

Tôi đang sử dụng wp_remote_post đăng một số thông tin để kết nối an toàn như thế nàywp_remote_post trả về một lỗi trên kết nối SSL

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

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

Nhưng tôi nhận được một lỗi:

SSL: CA certificate set, but certificate verification is disabled 

tôi mặc dù sslverify thiết lập để false có nên ngăn chặn điều đó không?

Nếu tôi đặt sslverify => true nó hoạt động nhưng có thể gây ra vấn đề trên các máy chủ khác

Dưới đây là các đối tượng wp_error hoàn chỉnh:

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 
     (
     ) 

) 

Có lẽ nó liên quan nhưng trên Apache 2.2 nó hoạt động trong khi trên Apache 2.4 nó doesn' t

+0

Có cùng vấn đề này ... Tôi nghĩ điều này là do một số cập nhật CURL/PHP? –

+0

Bạn có đang chạy OS X không? –

+0

Có, OSX 10.10 và phát triển cục bộ – Xaver

Trả lời

1

Dường như cấu hình Apache 2.2 và 2.4 của bạn khác nhau. Ngày 2.4, bạn có thể có SSLVerifyClient thiết lập để yêu cầu mà sẽ gây ra nó để hành động như những gì bạn đang mô tả. Bạn cần phải đặt thành không: http://httpd.apache.org/docs/current/mod/mod_ssl.html#SSLVerifyClient

+0

Làm cách nào để thay đổi cài đặt này? – Xaver

+0

Tệp phải nằm trong tệp httpd.conf: httpd.apache.org/docs/2.0/ssl/ssl_howto.html#accesscontrol – Yavor

Các vấn đề liên quan