相关疑难解决方法(0)

PHP - SSL证书错误:无法获得本地颁发者证书

我在Windows 7上运行PHP版本5.6.3作为XAMPP的一部分.

当我尝试使用Mandrill API时,我收到以下错误:

未捕获的异常'Mandrill_HttpError',消息'API调用消息/发送模板失败:SSL证书问题:无法获取本地颁发者证书'

我已经尝试过在StackOverflow上阅读的所有内容,包括将以下内容添加到php.ini文件中:

curl.cainfo = "C:\xampp\php\cacert.pem"
Run Code Online (Sandbox Code Playgroud)

并且当然从http://curl.haxx.se/docs/caextract.html下载到该位置的cacert.pem文件

但毕竟,重新启动XAMPP和Apache服务器但仍然得到相同的错误.

我真的不知道还有什么可以尝试的.

任何人都可以建议我还能尝试什么?

php xampp ssl curl mandrill

163
推荐指数
9
解决办法
23万
查看次数

使用PHP cURL和SSL证书时出错

我正在尝试使用cURL编写PHP脚本,该脚本可以通过使用SSL证书的页面授权用户,除了用户名和密码,我似乎无法通过SSL证书阶段.

在这种情况下,curl_setopt($handle, CURLOPT_VERIFYPEER, 0)遗憾的是不是一种选择.证书是身份验证的必要部分,否则我会收到此其他类似SO帖子中提到的错误.

我已尝试使用cURL进行一些命令行运行:

> curl --url https://website

这将返回(60) SLL certificate problem错误.如果我调整命令以包含--cacert选项:

> curl --url https://website --cacert /path/to/servercert.cer

它运作得很好; 返回auth网站.

但是,我尝试了以下PHP代码:

$handle = curl_init();
$options = array( 
                  CURLOPT_RETURNTRANSFER => false,
                  CURLOPT_HEADER         => true,
                  CURLOPT_FOLLOWLOCATION => false,
                  CURLOPT_SSL_VERIFYHOST => '0',
                  CURLOPT_SSL_VERIFYPEER => '1',
                  CURLOPT_CAINFO         => '/path/to/servercert.cer',
                  CURLOPT_USERAGENT      => 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)',
                  CURLOPT_VERBOSE        => true,
                  CURLOPT_URL            => 'https://website'
           );

curl_setopt_array($handle, $options);
curl_exec($handle);
if (curl_errno($handle)) {
  echo 'Error: ' . …
Run Code Online (Sandbox Code Playgroud)

php ssl curl certificate

27
推荐指数
3
解决办法
8万
查看次数

标签 统计

curl ×2

php ×2

ssl ×2

certificate ×1

mandrill ×1

xampp ×1