2015-01-21 28 views
24

Đây phải là một việc dễ dàng để thực hiện. Tôi có thể tìm thấy nhiều tài liệu tham khảo để làm thế nào để làm điều đó trong bửa tiệc ăn 3, nhưng họ không làm việc trong bửa tiệc ăn 5.Cách bỏ qua các lỗi chứng chỉ SSL không hợp lệ trong Guzzle 5

Những gì tôi đang làm cho đến nay:

$this->client = new GuzzleClient(['defaults' => [ 
    'verify' => 'false' 
]]); 

Khi tôi gửi một yêu cầu mặc dù tôi gặp lỗi này:

RequestException in RequestException.php line 51: 
SSL CA bundle not found: false 

Tôi không thể tìm thấy bất kỳ tham chiếu hữu ích nào cho lỗi này trên google. Nếu tôi có thể nhận được quyền truy cập vào các tùy chọn curl sau đó tôi có thể thử một cái gì đó giống như các giải pháp đề xuất ở đây (được cho ăn háu 3, do vậy tại sao nó không hoạt động): http://inchoo.net/dev-talk/symfony2-guzzle-ssl-self-signed-certificate/, phần có liên quan trong đó là:

$req->getCurlOptions()->set(CURLOPT_SSL_VERIFYHOST, false); 
$req->getCurlOptions()->set(CURLOPT_SSL_VERIFYPEER, false); 
+0

OK, có vẻ như tôi rất tệ khi đọc tài liệu. Cuối cùng đã tìm thấy điều này: http://docs.guzzlephp.org/en/latest/faq.html?highlight=ssl#how-can-i-add-custom-curl-options – Gnuffo1

Trả lời

45

Bạn nên sử dụng

$this->client = new GuzzleClient(['defaults' => [ 
    'verify' => false 
]]); 

tức là một Boolean sai sự thật, không phải là chuỗi 'false'

các tài liệu là ở đây: http://guzzle.readthedocs.org/en/latest/clients.html#verify

+8

'' 'mặc định''' thực sự là không phải là một phần của cấu hình của Guzzle 5 Client. Bạn nên sử dụng: $ this-> client = new GuzzleClient ([ 'verify' => false ]); – tixastronauta

+2

Trang tài liệu hơi được thay đổi thành: http://guzzle.readthedocs.io/en/latest/request-options.html#verify – bootoffav

15

Hãy thử với phiên bản cập nhật hoạt động:

$this->client = new GuzzleClient(['base_uri' => 'https://api.example.com/', 'verify' => false ]); 

hoặc một phiên bản đơn giản hơn:

$this->client = new GuzzleClient(['verify' => false ]); 

Thử nghiệm với phiên bản 6.2-dev.

+0

điều này thật hoàn hảo! cảm ơn. – simaremare

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