我正在使用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