Etikettarkiv: Amazon SES

Så skickar du E-post med Amazon SES

Amazon SES (Simple Email Service) är en relativt ny tjänst från Amazon som ingår i deras sfär med molntjänster även kallat Amazon Web Services (AWS). Tjänsten är till för dig som inte orkar hålla på att konfigurera Sendmail/qmail och hålla koll på köer osv.

Det tar några timmar att komma igång och köra och i mitt fall så valde jag Amazon SES för att skicka ut E-post då någon gör lösenordsåterställning på BloggBackup och Blogbackupr. Kostnaden är $0.10 per 1000 E-brev vilket jag tycker är okej och det finns ingen bindningstid, uppsägningstid osv.

Så här går du till väga för att börja skicka E-post:

1. Skapa ett Amazon AWS-konto samt Amazon SES-behörighet (jag var tvungen att verifiera mig via telefonen då en automatisk röst läser upp en PIN-kod).

2. Ladda hem Amazon SES scripts där ses-verify-email-address.pl ingår. Du måste ange din AWSAccessKeyId samt AWSSecretKey i en fil som perl-scriptet använder sig av. Dessa uppgifter hittar du Account -> Security Credentials. Verifiera sedan din E-post så du kan börja att skicka från den (Amazon mailar en länk som du måste klicka på).

3. Konfiguera SPF och lägg till include:amazonses.com – Eftersom jag använder Google Apps sedan tidigare så har jag även include:_spf.google.com med i min SPF som ser ut så här:

”v=spf1 mx a include:getanewsletter.com include:_spf.google.com  include:amazonses.com ~all”

4. Ladda hem AWS PHP SDK med hjälp av pear:

# pear channel-discover pear.amazonwebservices.com

# pear install aws/sdk

5. Ladda hem Amazon SES PHP Mailer från GitHub: https://github.com/geoloqi/Amazon-SES-Mailer-PHP

6. Testa att skicka enligt ”Usage” som ser ut enligt följande:

<?php   require_once('AmazonSESMailer.php'); // Create a mailer class with your Amazon ID/Secret in the constructor  $mailer = new AmazonSESMailer('your id', 'your secret'); // Then use this object like you would use PHPMailer normally!  $mailer--->AddAddress('you@example.com');
$mailer->SetFrom('you@example.com');
$mailer->Subject = 'Sent from Amazon SES';
$mailer->MsgHtml('This is a test');
$mailer->Send();
?>

7. Begär fullständig access så du kan skicka E-post till vem som helst (utanför sandbox). En verifiering som tar max 24h.

Observera att Amazon SES har en standardgräns på 1000 st E-post om dagen. Du kan dock begära högre quota. Jag tror även att dessa 1000 dagliga E-postbrev om dagen är gratis om du skickar från en Amazon EC2 instans.