Настройка AWS SES - невозможно отправить тестовое письмо - PullRequest
0 голосов
/ 22 февраля 2019

Я настроил AWS SES в соответствии с этим документом .

Невозможно отправить почту с подтвержденного идентификатора электронной почты SES (info@medicovibes.com)

ЕслиЯ запускаю этот код из экземпляра AWS EC2, я получаю пустую страницу или ошибку 500.сообщения об ошибке, относящейся к проблеме, не видно.

<?php
// If necessary, modify the path in the require statement below to refer to the
// location of your Composer autoload.php file.
require 'vendor/autoload.php';
use PHPMailer\PHPMailer\PHPMailer;
// Instantiate a new PHPMailer
$mail = new PHPMailer;
// Tell PHPMailer to use SMTP
$mail->isSMTP();
// Replace sender@example.com with your "From" address.
// This address must be verified with Amazon SES.
$mail->setFrom('info@medicovibes.com', 'rimo ');
// Replace recipient@example.com with a "To" address. If your account
// is still in the sandbox, this address must be verified.
// Also note that you can include several addAddress() lines to send
// email to multiple recipients.
$mail->addAddress('support@dotweb.in', 'Vikas');
// Replace smtp_username with your Amazon SES SMTP user name.
$mail->Username = 'concealed';
// Replace smtp_password with your Amazon SES SMTP password.
$mail->Password = 'concealed';
// Specify a configuration set. If you do not want to use a configuration
// set, comment or remove the next line.
//$mail->addCustomHeader('X-SES-CONFIGURATION-SET', 'ConfigSet');
// If you're using Amazon SES in a region other than US West (Oregon),
// replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP
// endpoint in the appropriate region.
$mail->Host = 'email-smtp.us-east-1.amazonaws.com';
// The subject line of the email
$mail->Subject = 'Amazon SES test (SMTP interface accessed using PHP)';
// The HTML-formatted body of the email
$mail->Body = '<h1>Email Test</h1>
    <p>This email was sent through the
    <a href="https://aws.amazon.com/ses">Amazon SES</a> SMTP
    interface using the <a href="https://github.com/PHPMailer/PHPMailer">
    PHPMailer</a> class.</p>';
// Tells PHPMailer to use SMTP authentication
$mail->SMTPAuth = true;
// Enable TLS encryption over port 587
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// Tells PHPMailer to send HTML-formatted email
$mail->isHTML(true);
// The alternative email body; this is only displayed when a recipient
// opens the email in a non-HTML email client. The \r\n represents a
// line break.
$mail->AltBody = "Email Test\r\nThis email was sent through the
    Amazon SES SMTP interface using the PHPMailer class.";
if(!$mail->send()) {
    echo "Email not sent. " , $mail->ErrorInfo , PHP_EOL;
} else {
    echo "Email sent!" , PHP_EOL;
}
?>

1 Ответ

0 голосов
/ 05 марта 2019

Вы можете попробовать включить отладку в PHP mailer и запустить ее из CLI.

php filename.php https://github.com/PHPMailer/PHPMailer/wiki/SMTP-Debugging

Вы должны увидеть, гдеэто проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...