php - 亚马逊 SES 错误

标签 php amazon-web-services ssl

我正在尝试在本地设置和测试 Amazon SES。我安装了 daniel-zahariev/php-aws-ses 版本。我设置了一个 send.php 以使用以下代码进行测试:

<?php

require_once 'src/SimpleEmailService.php';
require_once 'src/SimpleEmailServiceMessage.php';
require_once 'src/SimpleEmailServiceRequest.php';


$m = new SimpleEmailServiceMessage();
$m->addTo('MYEMAIL@EMAIL.COM');
$m->setFrom('CSMGR@EMAIL.COM');
$m->setSubject('Hello, world!');
$m->setMessageFromString('This is the message body.');

$ses = new SimpleEmailService('MY ACCESS KEY', 'SECRET KEY');
print_r($ses->sendEmail($m));

每当我运行 send.php 时,我都会收到错误:

SimpleEmailService::sendEmail(): 60 SSL certificate problem: unable to get local issuer certificate in C:\xampp\htdocs\amazonses\src\SimpleEmailService.php on line 392

我使用的电子邮件地址均已验证。 Amazon SES 的新手,因此我们将不胜感激任何帮助。

最佳答案

您需要从您的 curl 代码中禁用 CURLOPT_SSL_VERIFYHOST 和 CURLOPT_SSL_VERIFYPEER。要禁用 SimpleEmailServiceRequest.php 文件 getCurlHandler 函数中的代码更改。

    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);

关于php - 亚马逊 SES 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37441572/

相关文章:

Python 3 urllib 忽略 SSL 证书验证

java - 使用 Pax(包括 Jetty)在 Apache Karaf 中启用/禁用允许的密码套件

android - OpenSSLSocketImpl.getSession 崩溃

javascript - Tizen - 通过 Javascript 获取 PHP 输出

PHP MySQLi 和 MySQLi_STMT : Which insert_id to use?

php - Laravel 8 - SQLSTATE[HY000] [2002] 没有那个文件或目录

amazon-web-services - 使用 Redis 作为 AWS 负载均衡器

java - Tomcat 管理器 : Cannot Upload Large WAR file

php - 如何将 MPTT 层次结构数据正确排序到多维数组中。

java - 如何使用 Java 和 Eclipse 签署 Amazon API 的 REST 请求?