我正在使用Goutte在Web服務器上使用SSL證書獲取頁面。每當我試圖讓這個頁面下面的異常被拋出:Goutte - TLSv1協議版本錯誤
Uncaught exception 'Guzzle\\Http\\Exception\\CurlException' with message
'[curl] 35: error:1407742E:SSL
routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version
[url] https://somesite.com
我一直在網上找的這種類型的錯誤。看起來這個錯誤發生在握手失敗時。服務器似乎支持TLSv1,客戶端使用SSL23。
我不確定這個評估是否正確,也不知道如何糾正。
這是我目前使用的代碼:
<?php
use Goutte\Client;
$client = new Client();
$guzzle = $client->getClient();
$guzzle->setConfig(
array(
'curl.CURLOPT_SSL_VERIFYHOST' => false,
'curl.CURLOPT_SSL_VERIFYPEER' => false,
)
);
$client->setClient($guzzle);
$crawler = $client->request('GET', 'https://somesite.com'); // IT FAILS HERE
UPDATE:
注:我開始在幾個星期前類似的錯誤,所以我想我會更新問題和答案,因爲它們是相關的。
我有一個類似的錯誤:
[curl] 35: Unknown SSL protocol error in connection to website.com:443