Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 拉威尔家园:如何修复';cURL错误60:SSL证书问题';_Php_Laravel_Ubuntu_Curl_Homestead - Fatal编程技术网

Php 拉威尔家园:如何修复';cURL错误60:SSL证书问题';

Php 拉威尔家园:如何修复';cURL错误60:SSL证书问题';,php,laravel,ubuntu,curl,homestead,Php,Laravel,Ubuntu,Curl,Homestead,我正在用VirtualBox建立一个新的Laravel 5.8家园,一切都很好,除了curl让我有一个 '卷曲错误60:SSL证书问题' 当使用Guzzle客户端时。(我不想忽略ssl) 有什么想法吗?非常感谢 我试图替换: curl.cainfo = /etc/ssl/certs/ca-certificates.crt 借 下载自 在/etc/php/7.3/fpm/php.ini(以及7.1、7.2)中,问题似乎已经解决了。对于那些有同样问题的人: 当您尝试通过https对自己的本地网站

我正在用VirtualBox建立一个新的Laravel 5.8家园,一切都很好,除了
curl
让我有一个

'卷曲错误60:SSL证书问题'

当使用Guzzle客户端时。(我不想忽略ssl)

有什么想法吗?非常感谢

我试图替换:

curl.cainfo = /etc/ssl/certs/ca-certificates.crt 

下载自


在/etc/php/7.3/fpm/php.ini(以及7.1、7.2)中,问题似乎已经解决了。对于那些有同样问题的人:

当您尝试通过https对自己的本地网站进行curl时,curl会验证证书是否存在于/etc/ssl/certs/ca-certificates.crt中,显然它不存在

您必须使用位于以下位置的vim(或cat)打开Homestead.yaml生成的证书文件:

/etc/nginx/ssl/ca.homestead.homestead.crt
并复制位于中的默认ca-certificate.crt末尾的内容

/etc/ssl/certs/ca-certificates.crt 
默认的ca-certificates.crt不包含您的个人证书是很正常的


就这些

检查网站是否未使用自定义ssl证书

尝试在chrome中打开证书并导出所有证书,然后将它们添加到自定义
custom.pem

然后将其与Guzzle一起使用,方法如下:

$client = new Guzzle\Http\Client();
$client->setDefaultOption('verify', '/path/to/custom.pem');
现在可能有用了

您也可以使用下载证书,但我认为它不是正确的证书。所以我不得不手动下载

希望这有帮助


有关更多信息,请访问此

接收此错误:TypeError:传递给GuzzleHttp/Client::request()的参数3必须是第89行的/vendor/GuzzleHttp/guzzle/src/Client.php中调用的给定字符串数组类型。请通过显示变量中的内容详细说明问题。
$client = new Guzzle\Http\Client();
$client->setDefaultOption('verify', '/path/to/custom.pem');