首先有一点背景:出于某种原因,只有当我使用--tlsv1.2选项时,在我的Vagrant机器内进行curl
调用才能正常工作,而不是我得到的:
cURL error 35: SSL connect error (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)
所以我把这个值放到配置文件~/.curlrc
中,所以每次我都跑
命令行上的curl https://myapi.com
该选项是自动使用的,它可以正常工作。
但是,我目前正在使用Guzzle 6,它使用curl在后台进行API调用。我假设Guzzle
使用的卷曲将使用相同的配置文件~/.curlrc
,但似乎不是因为我再次出现:cURL error 35: SSL connect
错误。
这是我正在使用的代码:
$client = new HttpClient(['defaults' => [
'verify' => false
]]);
$response = $client->request('GET', 'https://myapi.com', ['curl' => [
CURLOPT_SSLVERSION => 6,
]]);
正如你所看到的,我甚至试图传递TLSV1.2值(根据curl php文档将值6映射到TLSV1.2)来卷曲,但仍然没有。 Anybodu知道这里可能有什么问题吗?
编辑:是的,刚刚确认Guzzle使用了其他一些卷曲二进制文件。我将原始的一个移动到另一个位置,不能再从命令行访问它,但之后Guzzle仍然返回相同的错误。