To create a PHP script to sent email using Amazon SES, create a folder
mkdir ses-test cd ses-test
Install phpMailer using composer
composer require phpmailer/phpmailer
Create a PHP file with following content
SMTPDebug = 2;
$mail->isSMTP();
$mail->Host = 'email-smtp.us-east-1.amazonaws.com'; // YOUR SES END POINT
$mail->SMTPAuth = true;
$mail->Username = 'AKIAJSKJUHBOU2ARXVLQ'; // SMTP Username
$mail->Password = 'AjMmd3gRkmTyCY2QoCDkWmkGKA345zuhseS7gV0X6uz0'; // SMTP Password
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
//Recipients
$mail->setFrom('info@YOUR_SES_VERIFIED_DOMAIN.com', 'YOUR_SES_VERIFIED_DOMAIN.com');
$mail->addAddress('you@your-domain.com', 'Your Name'); // If your SES is in Sandbox, you need to verify your email.
$mail->addReplyTo('info@YOUR_SES_VERIFIED_DOMAIN.com', 'YOUR_SES_VERIFIED_DOMAIN.com');
//Content
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = 'Here is the subject';
$mail->Body = 'This is the HTML message body in bold!';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
$mail->send();
echo 'Message has been sent';
} catch (Exception $e) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
}
Now test it by running
root@ok:~/ses-test# php 1.php
2018-01-15 08:45:54 SERVER -> CLIENT: 220 email-smtp.amazonaws.com ESMTP SimpleEmailService-2762711029 fDkTVziQIcNhSCkxwSpA
2018-01-15 08:45:54 CLIENT -> SERVER: EHLO ok
2018-01-15 08:45:54 SERVER -> CLIENT: 250-email-smtp.amazonaws.com
250-8BITMIME
250-SIZE 10485760
250-STARTTLS
250-AUTH PLAIN LOGIN
250 Ok
2018-01-15 08:45:54 CLIENT -> SERVER: STARTTLS
2018-01-15 08:45:54 SERVER -> CLIENT: 220 Ready to start TLS
2018-01-15 08:45:54 CLIENT -> SERVER: EHLO ok
2018-01-15 08:45:54 SERVER -> CLIENT: 250-email-smtp.amazonaws.com
250-8BITMIME
250-SIZE 10485760
250-STARTTLS
250-AUTH PLAIN LOGIN
250 Ok
2018-01-15 08:45:54 CLIENT -> SERVER: AUTH LOGIN
2018-01-15 08:45:54 SERVER -> CLIENT: 334 VXNlcm5hbWU6
2018-01-15 08:45:54 CLIENT -> SERVER:
Visited 1 times, 1 visit(s) today