Amazon SES 電子郵件傳送錯誤 - Amazon Simple Email Service

Amazon SES 電子郵件傳送錯誤

此主題檢視您在透過 Amazon SES 傳送電子郵件時可能遇到的電子郵件傳送錯誤可進行的疑難排解類型。若您嘗試透過 Amazon SES 傳送電子郵件,而對 Amazon SES 發出的呼叫失敗,Amazon SES 會將錯誤訊息傳回您的應用程式且不會傳送電子郵件。觀察此錯誤訊息的方法取決於您呼叫 Amazon SES 的方式。

  • 如果您直接呼叫 Amazon SES API,查詢動作將傳回錯誤。錯誤可以是 MessageRejectedAmazon Simple Email Service API Reference常見錯誤主題內指定錯誤的其中一項。

  • 若您透過使用支援異常的程式語言 AWS 開發套件來呼叫 Amazon SES,Amazon SES 可能會拋出異常。例外的類型將根據 SDK 與錯誤而有不同。例如,異常可以是 Amazon SES MessageRejectedException (實際名稱會因軟體開發套件而有所不同) 或一般 AWS 異常。無論是哪種類型的例外狀況,例外中的錯誤類型和錯誤訊息都將提供您更多資訊。

  • 如果您透過 SMTP 界面來呼叫 Amazon SES,您遇到錯誤的方法依應用程式而有不同。某些應用程式可能會顯示特定錯誤訊息,某些則可能不會顯示。如需 Amazon SES 傳回的 SMTP 回應代碼清單,請參閱Amazon SES 傳回的 SMTP 回應代碼

注意

當您呼叫 Amazon SES 傳送一封電子郵件卻失敗時,您無須支付該封電子郵件費用。

以下是 Amazon SES 專屬問題的類型,可能導致 Amazon SES 在您嘗試傳送電子郵件時傳回錯誤。這些錯誤是除了如 Amazon Simple Email Service API Reference常見錯誤主題內所指出 MalformedQueryString 等一般 AWS 錯誤之外的錯誤。

  • 未驗證電子郵件地址。以下身分無法在區域 regionidentity1identity2identity3 中通過檢查 – 您正在嘗試從未經 Amazon SES 驗證的電子郵件或網域傳送電子郵件。此錯誤可以套用到「寄件人」、「來源」、「寄件者」或「傳回路徑」地址。若您的帳戶仍在 Amazon SES 沙盒中,除了由 Amazon SES 信箱模擬器提供的收件人外,您也必須驗證每個收件人的電子郵件地址。如果 Amazon SES 無法顯示所有失敗的身分,錯誤訊息將以省略符號做為結尾。

    注意

    Amazon SES 在多個 AWS 區域中皆有端點,而每個 AWS 區域的電子郵件驗證狀態都是分開的。您必須在想要使用的 AWS 區域中完成區域內每個寄件者的驗證程序。

  • 帳戶已暫停 – 您帳戶傳送電子郵件的功能已暫停。您仍然可以存取 Amazon SES 主控台及執行大多數的操作。不過,若您嘗試傳送電子郵件,便會收到此訊息。

    若我們暫停了您帳戶傳送電子郵件的功能,我們會自動傳送通知到與您 AWS 帳戶相關聯的電子郵件地址。如需詳細資訊,請參閱Amazon SES 傳送審核程序常見問答集

  • 調節—您的應用程式可能每秒嘗試傳送太多郵件,或是您可能在過去 24 小時內傳送太多電子郵件。在這些情況下,錯誤訊息可能與下列範例類似:

    • 超過每日訊息配額 – 您已到達 24 小時期間內允許傳送的訊息數上限。如果您已超過每日配額,必須等到下一個 24 小時期間才能傳送更多的電子郵件。

    • 超過最高傳送速率 – 您每秒嘗試傳送的電子郵件數量大於允許的最高傳送速率。如果您已超過傳送速率,仍可繼續傳送電子郵件,但需要降低傳送速率。如需詳細資訊,請參閱 AWS 傳訊與目標部落格 中的 How to handle a "Throttling - Maximum sending rate exceeded" error

    您應該定期監控您的傳送活動,以確認剩餘的傳送配額。如需更多詳細資訊,請參閱 監控您的 Amazon SES 傳送配額。如需有關傳送配額的一般資訊,請參閱管理您的 Amazon SES 傳送配額。如需提高傳送配額的相關資訊,請參閱提高您的 Amazon SES 傳送配額

    重要

    如果錯誤文字說明調節錯誤與您超過每日配額或最高傳送速率不相關,則可能發生的是屬於系統的全面性問題而導致傳送功能降低。如需服務狀態的詳細資訊,請前往 AWS 服務運作狀態儀表板

  • 未指定收件人 – 未提供收件人。

  • 電子郵件地址中含有非 ASCII 字元 – 電子郵件地址必須是 7 位元的 ASCII 字串。如果您要寄出的電子郵件地址或收件人的電子郵件地址網域部分包含 Unicode 字元,您必須使用 Punycode 編碼來將網域編碼。Punycode 不可用於電子郵件的本機部分 (也就是 @ 前的部分),也不能使用於「友善寄件人」名稱中。如果您想要於「方便從」名稱中使用 Unicode 字元,則必須使用 MIME 編碼的字詞語法來對「方便從」名稱編碼,如 使用 Amazon SES API 傳送電子郵件原始碼 中所述。如需 Punycode 的詳細資訊,請參閱 RFC 3492

  • Mail FROM 網域未驗證 – Amazon SES 無法讀取使用指定 MAIL FROM 網域所需的 MX 記錄。如需設定自訂 MAIL FROM 網域的相關資訊,請參閱設定自訂 MAIL FROM 網域

  • 組態集不存在 – 您指定的組態集不存在。組態設定是可選參數,可用來發佈電子郵件傳送事件。如需更多詳細資訊,請參閱 使用 Amazon SES 事件發佈監控電子郵件傳送