Base ng Kaalaman
Magpadala ng email sa pamamagitan ng iyong sariling Amazon SES account
Ikonekta ang iyong sariling Amazon SES account sa pamamagitan ng SMTP: ang pagpili at pananatili sa isang rehiyon, Easy DKIM, paglabas sa sandbox BAGO ka kumonekta, at kung bakit ang mga kredensyal ng SMTP ay hindi ang iyong AWS access key.
Kakailanganin ninyo ng isang AWS account at access sa DNS ng inyong domain. Ang SES ang pinakamurang opsyon sa listahang ito nang may malaking agwat, at ang may pinakamaraming hakbang.
Ang sariling dokumentasyon ng Amazon: Pag-verify ng domain · Pagkuha ng mga kredensyal sa SMTP · Paglabas sa sandbox
⭐ Kumokonekta kami sa SES sa pamamagitan ng interface nitong SMTP, hindi ang REST API nito. Iyon ang dahilan kung bakit hinihingian kayo ng isang SMTP username at password sa halip na isang AWS access key. Parehong naghahatid ang dalawang ruta ng eksaktong parehong mensahe; iniiwasan ng SMTP ang isang buong klase ng mga problema sa pag-sign ng kahilingan sa AWS na mahirap i-diagnose mula sa labas, at ito ang interface kung saan naglalathala ng mga kredensyal ang Amazon nang tumpak para magamit ito ng mga tool na tulad ng sa amin.
1. Pumili ng rehiyon at manatili rito
Rehiyonal ang SES. Ang lahat sa ibaba — ang inyong na-verify na domain, ang inyong mga kredensyal, ang inyong quota sa pagpapadala — ay kabilang sa isang rehiyon ng AWS at hindi umiiral sa anupamang iba.
Piliin ang pinakamalapit sa inyong mga kliyente (eu-west-1 para sa Europa, us-east-1 para sa Hilagang Amerika) at itala ito. Ang pag-verify ng inyong domain sa Ireland at pagkatapos ay paglikha ng mga kredensyal sa Frankfurt ang pinakakaraniwang paraan para masayang ang isang hapon dito, at ang error na ibinibigay nito ay walang sinasabi tungkol sa mga rehiyon.
2. I-verify ang inyong domain
Amazon SES console → Identities → Create identity → Domain. Maglagay ng subdomain tulad ng mail.yourdomain.com.
I-on ang Easy DKIM at piliin ang RSA_2048_BIT. Nagbibigay sa inyo ang SES ng tatlong CNAME record:
| Type | Host | | --- | --- | | CNAME | <token1>._domainkey.mail.yourdomain.com | | CNAME | <token2>._domainkey.mail.yourdomain.com | | CNAME | <token3>._domainkey.mail.yourdomain.com |
Idagdag ang lahat ng tatlo. Karaniwang natatapos ang pag-verify sa loob ng isang oras.
⭐ Paganahin din ang isang custom MAIL FROM domain (bounce.mail.yourdomain.com) at idagdag ang mga MX at SPF TXT record na hinihiling nito. Kung wala ito, ang nagpapadala ng inyong sobre ay amazonses.com, kaya umaayon ang SPF sa Amazon sa halip na sa inyo, at umaasa lamang kayo sa DKIM.
3. Lumabas sa sandbox — ito ang hakbang na nakakaligtaan ng mga tao
⛔⛔ Ang isang bagong SES account ay nasa loob ng sandbox at maaari lamang magpadala sa mga address na hiwalay ninyong na-verify. Tatanggapin nito ang lahat ng iba pa at walang ihahatid ni isa man dito.
Ito mismo ang pagkabigo na umiiral ang ating hakbang sa pag-verify upang masalo: sa sandbox, tinatanggap ng SES ang inyong mensahe na may perpektong normal na tugon ng tagumpay at pagkatapos ay tinatanggal ito. Kung io-verify ninyo ang aming setup sa pamamagitan ng pagpapadala ng pagsubok sa isang address na natapat na na-verify ninyo sa AWS, gagana ito — at pagkatapos ay mawawala ang bawat mensahe sa isang tunay na kliyente.
Account dashboard → Request production access. Nagatanong ang Amazon kung ano ang ipinapadala ninyo at kung paano ninyo hinahawakan ang mga bounce; ang ilang tapat na pangungusap tungkol sa mga transaksyonal na abiso sa inyong sariling mga kliyente ay karaniwang inaaprubahan sa loob ng 24 oras.
⭐ Gawin ito bago ninyo ikonekta ang SES dito. Walang i-debug pagkatapos nito, dahil walang nabibigo.
4. Lumikha ng mga kredensyal sa SMTP
SES console → SMTP settings → Create SMTP credentials.
Lumilikha ito ng isang IAM user na may pahintulot na magpadala lamang at nagbibigay sa inyo ng isang SMTP username at isang SMTP password.
⛔ Ang mga ito ay hindi ang inyong AWS access key at secret. Nagmula ang mga ito sa isang IAM secret sa pamamagitan ng isang tiyak na algorithm at hindi sila magkasalit. Ang pag-paste ng isang AWS secret access key dito ay mabibigo sa pag-authenticate sa bawat pagkakataon, at sasabihin lamang ng error na tinanggihan ang mga kredensyal.
⚠️ Minsan lamang ipinapakita ang password. I-download ang CSV bago kayo umalis sa pahina.
5. Ikonekta ito sa Zinn®
Buksan ang Email sending sa inyong dashboard:
- Provider — Amazon SES
- Send from this domain —
mail.yourdomain.com - AWS region — ang rehiyon mula sa hakbang 1, hal.
eu-west-1 - SMTP username — mula sa hakbang 4
- Port — panatilihin sa 587
- SES SMTP password — mula sa hakbang 4
Ginagawa namin ang host para sa inyo (email-smtp.<region>.amazonaws.com), kaya walang hostname na maaaring maling mai-type.
6. Padalhan ang pagsubok at ilagay ang code
Pindutin ang Send test message sa isang inbox sa isang magkaibang domain na hindi pa ninyo na-verify sa AWS — ang isang personal na Gmail address ay mainam, dahil ito ang nagpapatunay na kayo ay nasa labas ng sandbox. Basahin ang code at ilagay ito.
Kapag hindi ito gumagana
"Email address is not verified" habang nagpapadala sa isang tunay na kliyente — kayo ay nasa loob pa rin ng sandbox. Hakbang 3.
535 Authentication Credentials Invalid — ginamit ninyo ang inyong AWS access key sa halip na mga kredensyal sa SMTP (hakbang 4), o ang mga kredensyal ay nabibilang sa ibang rehiyon kaysa sa inyong inilagay.
"Maximum sending rate exceeded" — ang isang bagong production account ay nagsisimula sa 14 na mensahe bawat segundo at 50,000 bawat araw. Malaking bilang iyon ng mga abiso, ngunit kung naglilipat kayo ng isang malaking base ng kliyente, humiling muna ng pagtaas.
Gumana ito sa pagsubok at tumigil sa production — suriin ang dashboard ng Reputation ng SES. Awtomatikong pinapahinto ng Amazon ang pagpapadala kapag ang rate ng bounce o reklamo ay lumampas sa kanilang threshold, at madaling lumampas dito gamit ang isang lumang listahan ng kliyente.
Na-stuck pa rin?
Kasama ang suporta sa bawat plano at may mga sagot sa iyong sariling wika.
Makipag-ugnayan sa suporta → Lahat ng artikulo →