我正在尝试使用条带发送API请求,但收到错误消息:
cURL错误60: SSL证书问题:无法获取本地颁发者证书
这是我正在运行的代码:
public function chargeStripe()
{
$stripe = new Stripe;
$stripe = Stripe::make(env('STRIPE_PUBLIC_KEY'));
$charge = $stripe->charges()->create([
'amount' => 2900,
'customer' => Input::get('stripeEmail'),
'currency' => 'EUR',
]);
return Redirect::route('step1');
}
我在谷歌上搜索了很多,很多人建议我下载这个文件:cacert.pem,把它放在某个地方,然后在我的php.ini中引用它。这是我的php.ini中的一部分:
curl.cainfo = "C:\Windows\cacert.pem"
然而,即使在多次重启服务器并更改路径后,我仍然收到相同的错误消息。
我在Apache中启用了ssl_module,在我的php.ini
中启用了php_curl。
我也尝试过这个修复:How to fix PHP CURL Error 60 SSL
这建议我将以下行添加到我的cURL选项:
curl_setopt($process, CURLOPT_CAINFO, dirname(__FILE__) . '/cacert.pem');
curl_setopt($process, CURLOPT_SSL_VERIFYPEER, true);
我应该在哪里给我的cURL添加选项?显然不是通过命令行,因为我的命令行没有找到命令"curl_setopt“
发布于 2016-01-20 01:27:40
如何解决这个问题:
按照https://curl.se/docs/caextract.html上的说明下载并解压
XAMPP用户可以使用C:\xampp\php\extras\ssl\cacert.pem
)将其保存在您的文件系统中的某个位置(例如,
C:\xampp\php\extras\ssl\cacert.pem
)[curl]
部分(将其放在[openss]
部分也是一个好主意):[curl]
curl.cainfo = "C:\xampp\php\extras\ssl\cacert.pem"
[openssl]
openssl.cafile = "C:\xampp\php\extras\ssl\cacert.pem"
发布于 2018-01-29 00:43:38
Wamp/Wordpress/windows用户请注意。我有这个问题好几个小时了,甚至连正确的答案都没有为我解决,因为我编辑了错误的php.ini文件,因为这个问题是给XAMPP而不是给WAMP用户的,即使这个问题是给WAMP的。
将其放入C:\wamp64\bin\php\your php version\extras\ssl
中
在php.ini
中启用php_openssl.dll
。请注意,我的问题是我有两个php.ini文件,我需要在这两个文件中执行此操作。第一个可以在你的WAMP任务栏图标里面找到。
找到这两个php.ini
文件的位置,找到curl.cainfo =
行,并为其指定如下路径
curl.cainfo = "C:\wamp64\bin\php\php(Version)\extras\ssl\cacert.pem"
现在保存文件并重新启动服务器,您就可以开始工作了
发布于 2015-07-07 03:14:44
如果你正在使用PHP5.6和Guzzle,Guzzle已经切换到使用PHP库自动检测证书,而不是它的进程(ref)。PHP概述了here的变化。
找出PHP/Guzzle在哪里寻找证书
您可以使用以下PHP命令转储PHP正在查找的位置:
var_dump(openssl_get_cert_locations());
获取证书捆绑包
对于OS测试,您可以使用自制软件安装openssl brew install openssl
,然后在您的php.ini或Zend Server设置中使用openssl.cafile=/usr/local/etc/openssl/cert.pem
(在OpenSSL下)。
curl网站上的curl/Mozilla也提供了证书捆绑包:https://curl.haxx.se/docs/caextract.html
告诉PHP证书在哪里
一旦你有了一个包,要么把它放在PHP已经在查找的地方(你在上面找到了),要么在php.ini中更新openssl.cafile
。(通常,在Unix上为/etc/php.ini
或/etc/php/7.0/cli/php.ini
或/etc/php/php.ini
。)
https://stackoverflow.com/questions/29822686
复制相似问题