我已经在Windows Apache服务器上安装了Mandrill PHP API。当试图发送电子邮件使用下面的代码我得到的错误:
Mandrill_HttpError-对消息/发送模板的API调用失败:SSL证书问题:无法获取本地颁发者证书
我不清楚Mandrill如何连接到我的本地颁发者证书。我的web服务器确实具有有效的证书,并且可以成功显示HTTPS页面。
有什么想法吗?
$mandrill = new Mandrill('MyMandrillAPIKey');
$message = array(
'subject' => 'Test message',
'from_email' => 'MyEmailAddress',
'html' => '<p>this is a test message with Mandrill\'s PHP wrapper!.</p>',
'to' => array(array('email' => 'MyEmailAddress', 'name' => 'David Splat')),
'merge_vars' => array(array(
'rcpt' => 'MyEmailAddress',
'vars' =>
array(
array(
'name' => 'FIRSTNAME',
'content' => $fName),
array(
'name' => 'LASTNAME',
'content' => $lName)
))));
$template_name = 'MyTemplateName';
$template_content = array(
array(
'name' => 'main',
'content' => 'Hi *|FIRSTNAME|* *|LASTNAME|*, thanks for signing up.'),
array(
'name' => 'footer',
'content' => 'Copyright 2014.')
);
print_r($mandrill->messages->sendTemplate($template_name, $template_content, $message));
} catch(Mandrill_Error $e) {
// Mandrill errors are thrown as exceptions
echo 'A mandrill error occurred: ' . get_class($e) . ' - ' . $e->getMessage();
throw $e;
}
这里有一个改变,解决了我的问题。在Mandrill.php在调用curl_init()之后添加这两行:
curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, 0);
使用Mandrill(php)发送电子邮件时出错的一个答案建议了这种方法
您不需要关闭curl SSL选项,而是可以从下载cacert.pem文件http://curl.haxx.se/docs/caextract.html 然后将其包含在php.ini文件curl.cainfo=“/exact/location/to/cacert.pem”
或者简单地更改Mandrill.php文件中的行以使用它,如下所示。
curl_setopt ($this->ch, CURLOPT_SSL_VERIFYPEER, TRUE);
curl_setopt ($this->ch, CURLOPT_CAINFO, __DIR__ . "/cacert.pem")
链接到邮报http://tutewall.com/ssl-certificate-problem-unable-to-get-local-issuer-certificate/
我正在Windows7上运行PHP版本5.6.3作为XAMPP的一部分。 当我尝试使用Mandrill API时,我得到以下错误: 未捕获异常“Mandrill_HttpError”,消息为“API调用消息/send-template失败:SSL证书问题:无法获取本地颁发者证书” 我已经尝试了在StackOverflow上读到的所有内容,包括向php.ini文件添加以下内容: 当然可以从http:
问题内容: 我正在Windows 7上将PHP版本5.6.3作为XAMPP的一部分运行。 当我尝试使用Mandrill API时,出现以下错误: 消息“ API调用消息/发送模板失败”的未捕获异常“ Mandrill_HttpError”:SSL证书问题:无法获取本地颁发者证书 我已经尝试了我在StackOverflow上阅读的所有内容,包括将以下内容添加到php.ini文件中: 当然,还可以从h
我正在Windows服务器2016上的wamp上使用洋红色社区版2.2。每当我尝试登录以通过系统同步您的Magento市场购买时 “SSL 证书问题:无法获取本地颁发者证书” 我尝试了这个论坛中其他一些线程中提供的解决方案来下载cacert。pem并在php.ini中执行以下设置 curl . cainfo = " C:\ wamp 64 \ bin \ PHP \ PHP 7 . 1 . 9 \
问题内容: 我在本地开发环境上使用WAMP,并尝试从信用卡中扣款,但收到错误消息: cURL错误60:SSL证书问题:无法获取本地颁发者证书 我在Google上进行了很多搜索,很多人建议我下载此文件:cacert.pem,将其放在某个位置,然后在php.ini中引用它。这是我的php.ini中的部分: 但是,即使多次重新启动服务器并更改了路径后,我仍然收到相同的错误消息。 我使用来自Apache模
我在Google上搜索了很多,很多人建议我下载这个文件:cacert.pem,把它放在某个地方,并在我的php.ini中引用它。这是我的php.ini中的部分: 然而,即使在重新启动服务器几次并更改路径后,我也会得到相同的错误消息。 我使用Apache模块中的WAMP并启用ssl_module。在PGP扩展中,我启用了php_curl。 这是我正在运行的代码:
我有一个问题...我在Gitlab中的代码,Azure运营模式下的管道。我使用经典编辑器。当我启动管道时,我有错误"致命:无法访问'致命:无法访问'https://my.repos.example:***. git/': SSL证书问题:无法获得本地颁发者证书"请帮帮我!