Noțiuni de bază cu serviciul de e-mail simplu Amazon (SES)

În acest tutorial am de gând să vorbesc despre serviciul Amazon simplu de e-mail (SES) și trece peste câteva moduri în care o puteți utiliza. SES este un serviciu de e-mail la ieșire, ceea ce înseamnă că vă va permite să trimiteți prin el e-mailuri.

De ce ai nevoie de un serviciu de e-mail? Ei bine, cu mulți furnizori de servicii de găzduire, trimiterea unei mulțimi de e-mail-uri (poate aveți o mulțime de clienți folosind magazinul dvs. web) poate fi o problemă, deoarece gazdele au tendința de a avea limitări. Alternativa standard este de a utiliza Gmail pentru a trimite e-mailuri, cu toate acestea, care are și limitări. Aici intră SES așa cum este proiectat pentru acest scop precis. SES face trimiterea de e-mail-uri mai fiabile și, folosind o atingere de magie, ajută și e-mailurile dvs. să evite dosarele SPAM.

Prețuri

Când vă înscrieți la Amazon, puteți folosi nivelul lor gratuit timp de 12 luni. Nivelul gratuit vă va oferi acces la toate serviciile Amazonului, dar cu limitări corecte. De exemplu, SES este limitat la 2.000 de mesaje pe zi dacă optați pentru găzduirea lor EC2.

În caz contrar, costul este de 0,10 USD pe mia de mesaje. Ei consideră un singur mesaj ca un mesaj pentru un singur destinatar. Deci, dacă trimiteți un e-mail la 1000 de adrese de e-mail, acesta vă va costa 10 cenți în dolari.

Atașarea fișierelor costă 0,12 USD pe GB.

Opțiuni pentru utilizarea SES

În prezent există două modalități de a utiliza SES: 

  • Simplu protocol de transfer de mesaje (denumit în mod obișnuit SMTP)
  • API-ul SDK 

Lucrează diferit; SMTP vă permite să conectați direct la serverul de e-mail, în timp ce metoda API vă permite să trimiteți e-mailuri prin serviciul SES AWS. În acest tutorial vom acoperi utilizarea serverului SMTP prin intermediul unui plugin WordPress, apoi (pentru cei mai îndrăzneți dintre dvs.) vom analiza utilizarea API-ului SDK.

Configurare rapidă a contului SES

Înainte de a face ceva, avem nevoie de un cont la SES. Acest lucru vă va arăta cum să vă pregătiți contul și să trimiteți e-mailuri utilizând consola.

Înscrieți-vă la AWS

Înainte de a putea utiliza SES, trebuie să vă înscrieți pentru un cont Amazon Web Services - este necesar un card de credit, chiar și pentru planul gratuit. Pentru a vă înscrie, trebuie să accesați http://aws.amazon.com/ses, să urmați instrucțiunile de pe ecran și să finalizați câțiva pași de confirmare a identității.

După ce v-ați înscris, veți avea acces la toate serviciile Amazon.

Verifică-ți adresa de email

Indiferent dacă utilizați serviciul în nisip sau în producție, va trebui să vă verificați adresa "De la". Puteți găsi mai multe informații despre verificarea adreselor de e-mail în documentația de ajutor.

Cereți accesul la producție

Odată ce ați primit un e-mail, puteți solicita accesul la producție. Acest lucru vă va permite să trimiteți e-mailuri la adrese de e-mail neconfirmate. Numărul de e-mailuri pe care le puteți trimite pe zi va fi ridicat. 

Notă: Este înțelept să jucați în modul sandbox înainte de a trimite e-mailuri reale.

Utilizarea pluginului WordPress

În timp ce Amazon nu are în prezent un plugin oficial, există totuși pachete de la terți care pot face acest lucru. În acest exemplu vom folosi un plugin numit Amazon SES DKIM Mailer. Acesta este un plugin genial, compatibil cu diferite servicii de e-mail, inclusiv Amazon SES. Aceasta înseamnă că, dacă ați decis să nu rămâneți la SES, atunci nu trebuie să vă schimbați site-ul, ci doar detaliile conexiunii.

Acest plugin vine, de asemenea, cu suport pentru DomainKeys Identified Mail (DKIM). DKIM este despre Reputație; prin semnarea e-mailurilor dvs. cu acest lucru, puteți împiedica e-mail-urile să se îndrepte direct spre dosarul junk.

instalarea

Luat de la documentația plug-in pe WordPress:

  1. Dezactivați toate pluginurile mailer existente pentru a evita conflictele.
  2. Dezarhivați fișierul zip plugin din directorul / wp-content / plugins / (sau instalați-l prin programul de instalare plug-in WordPress încorporat).
  3. Activează pluginul prin Plugin-uri admin meniu în WordPress.
  4. Faceți clic pe pluginul Setări link-ul de lângă ei Dezactivați (încă în pagina Pluginuri) sau faceți clic pe Setări> Setări poștă link, pentru a accesa pagina de setări a administratorului pluginului. Personalizați setările pentru situația dvs..

După cum am discutat mai devreme, pentru a utiliza Amazon SES într-un mediu din lumea reală, va trebui să aplicați pentru accesul la producție. Fără aceasta, nu veți putea trimite e-mailuri la adrese pe care nu le controlați.

DKIM

Pentru a profita de DKIM, va trebui să generați o cheie publică și privată și să încărcați cheia privată pe serverul dvs. (vă recomandăm să o denumiți ".htkeyprivate" și să o plasați în rădăcina site-ului și să setați permisiunile la 400 sau 440). 

Pentru utilizatorii de Windows există multe generatoare de chei online pentru a ajuta la acest lucru. Pe un server linux sau pe un Mac puteți genera propriile taste DKIM cu o parolă de "change-me" folosind următoarea comandă terminal: 

openssl genrsa -des3 -passout pass: schimbare-me -out .htkeyprivate 1024 && openssl rsa -in .htkeyprivate -passin pass: change-me -pubout -out .htkeypublic

Pentru DKIM, setați o înregistrare DNS TXT ca: 

HOST: your-selector._domainkey.example.com. Valoarea TXT: v = DKIM1; k = rsa; g = *; s = e-mail; h = SHA1; t = s; p = dvs. public-cheie;

Utilizați testele integrate pentru a verifica dacă blogul dvs. poate trimite în mod corespunzător e-mailuri (semnat DKIM).

Configurarea

Pentru a vă asigura că pluginul este setat să funcționeze cu AWS SES, există câteva setări care trebuie configurate (consultați captura de ecran de mai sus).

  • Bifați Trimiteți e-mail prin Amazon SES?
  • Adăugați cheia dvs. de acces AWS
  • Adăugați cheia secretă AWS
  • Asigurați-vă că adresa "De la" este cea pe care ați validat-o mai devreme.

Acum puteți folosi pluginul Trimiteți un mesaj de testare. După ce ați primit e-mailul, sunteți complet gata să îl utilizați.

AWS SDK PHP Tutorial

Pentru utilizatorii mai avansați, în această secțiune vă voi arăta cum să trimiteți un e-mail utilizând SDK-ul. Acest lucru va fi folosind PHP, cu toate acestea, există SDK-uri pentru alte limbi, de asemenea.

Mai întâi trebuie să instalați SDK-ul. Pentru PHP există câteva moduri de a face acest lucru; Compozitor, Phar, Zip și PEAR. Pentru acest tutorial vom folosi Composer, pe care va trebui să îl instalați mai întâi. Odată ce ați instalat programul Composer, ar trebui să îl puteți accesa din interfața de comandă (CLI).

Creați un fișier în rădăcina proiectului dvs. numit "composer.json", aici vă veți pune configurația. Apoi adauga:

"necesită": "aws / aws-sdk-php": "2. *"

Dacă ați folosit "composer.phar" atunci puteți face php installer.phar install sau pe ferestre compozitorul instala. În proiectul dvs. puteți adăuga apoi cereți "/path/to/sdk/vendor/autoload.php";

Acum că ați făcut acest lucru, aveți acces la toate API-urile produsului pe care le oferă AWS. Aceasta înseamnă că acum puteți trimite e-mailuri. Deci, ce aveți nevoie?

Iată un exemplu:

utilizați Aws \ Ses \ SesClient; cereți "vânzător / autoload.php"; $ client = SesClient :: fabrică (array ('key' => 'AWS_KEY', 'secret' => 'AWS_SECRET_KEY', 'regiune' => 'us-east-1')); $ emailSentId = $ client-> sendEmail (array (// Sursa este obligatorie 'Source' => '[email protected]', // Destinatia este necesara 'Destination' => array ('ToAddresses' => @@mail.com)), // Mesajul este solicitat 'Mesaj' => Array (// Subiectul este necesar 'Subject' => Array (// Datele sunt necesare 'Data' => => 'UTF-8',), // Corpul este necesar 'Body' => array ('Text' => array (// Datele sunt obligatorii 'Data' => > 'UTF-8',), 'Html' => array (// Datele sunt necesare 'Date' => 'Emailul meu HTML',' Charset '=>' UTF-8 ',),),' ReplyToAddresses '=> array (' [email protected] '),' ReturnPath '=>' [email protected] '));

Să trecem prin asta. Mai întâi am adăugat utilizarea spațiului de nume pentru a face codul să pară mai curat. Apoi am adăugat fișierul autoload.php al compozitorului.

Pentru a trimite într-adevăr un fișier, trebuie să facem un client. Aceasta se face prin utilizarea SES Client Factory. Acest lucru poate lua multe setări diferite, dar minimul de care avem nevoie este cheia, secretul și regiunea. Puteți găsi cheia și secretul în Consola de administrare IAM. Regiunea este regiunea pe care ați utilizat-o pentru SES.

Cu asta aveți acum configurația clientului și sunteți gata să plecați. Acum puteți utiliza clientul pentru a apela Trimite email. Există și alte metode pe care le puteți apela și puteți găsi mai multe informații despre ele în documentația de ajutor.

Trimite email metoda ia un singur parametru care este o matrice. Această matrice necesită anumite date în cadrul acesteia; de exemplu, sursa este necesară și trebuie să fie o adresă pe care ați validat-o în contul dvs. pentru a permite trimiterea de e-mailuri.

Odată ce ați pus e-mailurile pe care doriți să le utilizați și ați adăugat conținutul e-mailului dvs. puteți rula acum scriptul și veți fi trimis primul e-mail!

Concluzie

Indiferent de traseul de implementare pe care îl luați, sper că acest tutorial ți-a încântat interesul și te-a încurajat să te uiți la Amazon SES! Dacă întâmpinați probleme la utilizarea SES, nu ezitați să cereți sfaturi în comentariile dvs..

Resurse suplimentare

  • Amazon SES Blog
  • Amazon SES Pricing
  • Amazon Documentație SES