Назад | Перейти на главную страницу

Отправка почты через php в EC2

Я использовал следующий код для отправки почты с использованием php с помощью amazon ec2, но в результате я вижу только «aatest» и не получаю входящей почты. Кстати, я уже включил ses.php, подтвердил адрес электронной почты contact@mydomain.com и дважды подтвердил, что ключ доступа и ключ доступа являются правильными. Может ли кто-нибудь предложить способ его отладки?

require_once('ses.php');
$con=new SimpleEmailService('accesskey','accesskey');
print_r('aa'.$con->listVerifiedEmailAddresses());


$m = new SimpleEmailServiceMessage();
$m->addTo('contact@mydomain.com');
$m->setFrom('contact@mydomain.com');
$m->setSubject('Hello, world!');
$m->setMessageFromString('This is the message body.');
print_r($con->sendEmail($m));
echo 'test';

Отключите проверку сертификата SSL со следующими строками:

$con->enableVerifyHost(false);
$con->enableVerifyPeer(false);

Причина того, что он не прошел проверку сертификата SSL, заключается в том, что сертификат для SES не распознается ЦС (центром сертификации) по умолчанию, загруженным с cURL. Я считаю, что вам нужно создать собственный сертификат для AWS, перейдя в https://portal.aws.amazon.com/gp/aws/securityCredentials и щелкнув «Сертификаты X.509» и «Создать новый сертификат». После этого вы сможете скачать сертификат. Однако, если вы не знакомы с PHP, вы не сможете включить файл сертификата с этим классом PHP. Так что лучше всего отключить проверку.