Amazon web services Amazon AWS简单电子邮件服务:某些电子邮件地址从不接收电子邮件

Amazon web services Amazon AWS简单电子邮件服务:某些电子邮件地址从不接收电子邮件,amazon-web-services,playframework,apache-commons-email,Amazon Web Services,Playframework,Apache Commons Email,我已经在亚马逊AWS论坛上发布了这个问题,但我想我可能会在这里得到一个更快、更好的答案。如果你看两遍,我向你道歉 我的公司使用亚马逊AWS SMTP服务器通过基于Java的web界面发送电子邮件。这只是我们应用程序的一小部分,旨在允许用户邀请其他用户访问我们的应用程序 我们发现,在极少数情况下,某些电子邮件地址没有收到邀请。起初我们认为它与电子邮件地址中的连字符有关,但现在我确定情况并非如此。我已经使用自己的电子邮件域对此进行了一段时间的故障排除,我确定以下两个电子邮件地址从未收到任何使用AWS

我已经在亚马逊AWS论坛上发布了这个问题,但我想我可能会在这里得到一个更快、更好的答案。如果你看两遍,我向你道歉

我的公司使用亚马逊AWS SMTP服务器通过基于Java的web界面发送电子邮件。这只是我们应用程序的一小部分,旨在允许用户邀请其他用户访问我们的应用程序

我们发现,在极少数情况下,某些电子邮件地址没有收到邀请。起初我们认为它与电子邮件地址中的连字符有关,但现在我确定情况并非如此。我已经使用自己的电子邮件域对此进行了一段时间的故障排除,我确定以下两个电子邮件地址从未收到任何使用AWS SMTP服务器发送的电子邮件(email SMTP.us-east-1.amazonaws.com),但在发送过程中没有报告任何错误-电子邮件永远不会到达。第二个列表显示了类似的电子邮件地址,它们总是接收使用我们的系统发送的邀请。请注意,第一个列表中的地址从未收到电子邮件,我已多次尝试使用我们部署的所有实例

不接收电子邮件的地址:

  • jeremygoodell@jeremygoodell.com
  • 杰里米-goodell@jeremygoodell.com
确实接收电子邮件的地址:

  • test@jeremygoodell.com
  • 杰里米-goodell@pinkymcberry.com
  • 杰里米-goodell@hotmail.com
  • jeremygoodelk@jeremygoodell.com
很少有电子邮件地址会出现这个问题。我有点幸运,在我自己的领域发现了两个问题。我当然已经证实这与垃圾邮件过滤无关

应用程序是使用play框架用Java编写的。Play在引擎盖下使用Apache Commons电子邮件库。您可以在此处阅读更多信息:

以下是我在故障排除过程中采取的一些步骤:

1) 尝试使用其他SMTP服务器(使用我的个人ISP SMTP--SMTP.gvtc.com)--当我使用此SMTP服务器时,所有地址都会收到电子邮件。这似乎隔离了特定于AWS SMTP服务器的问题

2) 设置我自己的AWS帐户并使用此帐户的SMTP设置(在验证有问题的地址后)--我使用我自己的AWS SMTP帐户设置时遇到完全相同的问题。这似乎表明问题并非特定于我们公司的AWS帐户

3) 打开播放电子邮件调试设置(配置文件中的mail.debug=true)。对于系统发送的每封电子邮件,控制台中都会显示大量信息,但发送到好地址的电子邮件和发送到坏地址的电子邮件之间绝对没有区别。没有任何错误的迹象

以下是其中一封从未收到的电子邮件的日志内容。请注意,这是使用我为自己设置的AWS服务器。它看起来完全一样,当我使用我们公司的AWS SMTP服务器,除了从电子邮件地址是不同的。我已经删除了实际的电子邮件内容,因为它是HTML格式的,有点机密,与问题无关

May 15, 2013 8:44:47 AM play.Logger info
DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems,
 Inc]
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: trying to connect to host "email-smtp.us-east-1.amazonaws.com", port 465, isSSL false
220 email-smtp.amazonaws.com ESMTP SimpleEmailService-376766033
DEBUG SMTP: connected to host "email-smtp.us-east-1.amazonaws.com", port: 465

EHLO 0.1.0.5
250-email-smtp.amazonaws.com
250-8BITMIME
250-SIZE 10485760
250-AUTH PLAIN LOGIN
250 Ok
DEBUG SMTP: Found extension "8BITMIME", arg ""
DEBUG SMTP: Found extension "SIZE", arg "10485760"
DEBUG SMTP: Found extension "AUTH", arg "PLAIN LOGIN"
DEBUG SMTP: Found extension "Ok", arg ""
DEBUG SMTP: Attempt to authenticate
DEBUG SMTP: check mechanisms: LOGIN PLAIN DIGEST-MD5 NTLM
AUTH LOGIN
334 VXNlcm5hbWU6
QUtJQUk3WDNURUI0NEVKNlRSU1E=
334 UGFzc3dvcmQ6
QXJwZjl4eU1FTVc1WFNFR3ZxVXVPODNhRjFkcG8xMFpSeURXY0ZsNGVHQXM=
235 Authentication successful.
DEBUG SMTP: use8bit false
MAIL FROM:<jeremy-goodell@hotmail.com>
250 Ok
RCPT TO:<jeremygoodell@jeremygoodell.com>
250 Ok
DEBUG SMTP: Verified Addresses
DEBUG SMTP:   "jeremygoodell@jeremygoodell.com" <jeremygoodell@jeremygoodell.com>
DATA
354 End data with <CR><LF>.<CR><LF>
Date: Wed, 15 May 2013 08:44:47 -0500 (CDT)
From: "jeremy-goodell@hotmail.com" <jeremy-goodell@hotmail.com>
Reply-To: "jeremy-goodell@hotmail.com" <jeremy-goodell@hotmail.com>
To: "jeremygoodell@jeremygoodell.com" <jeremygoodell@jeremygoodell.com>
Message-ID: <2322287.7.1368625487826.JavaMail.UGOODJ3@SAOTXWL-9X913M1>
Subject: Please join the ACT Aspire Hari AV test delivery portal
MIME-Version: 1.0
Content-Type: multipart/mixed;
        boundary="----=_Part_6_16196755.1368625487826"

------=_Part_6_16196755.1368625487826
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit

    >>>> HTML EMAIL BODY REMOVED <<<<

------=_Part_6_16196755.1368625487826--
.
250 Ok 0000013ea86fb2de-0bd70205-8e9a-4042-972f-ad94b28c3101-000000
QUIT
221 Bye
2013年5月15日上午8:44:47播放。记录器信息
调试:getProvider()返回javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,sun Microsystems,
公司]
调试SMTP:useEhlo true,useAuth true
调试SMTP:useEhlo true,useAuth true
调试SMTP:尝试连接到主机“email SMTP.us-east-1.amazonaws.com”,端口465,isSSL false
220电子邮件-smtp.amazonaws.com ESMTP SimpleEmailService-376766033
调试SMTP:已连接到主机“email SMTP.us-east-1.amazonaws.com”,端口:465
EHLO 0.1.0.5
250-email-smtp.amazonaws.com
250-8比特
250号10485760
250-AUTH普通登录
250行
调试SMTP:找到扩展名“8BITMIME”,参数“”
调试SMTP:找到扩展名“SIZE”,arg“10485760”
调试SMTP:找到扩展名“AUTH”,参数“普通登录”
调试SMTP:找到扩展名“Ok”,参数“”
调试SMTP:尝试进行身份验证
调试SMTP:检查机制:登录普通摘要-MD5 NTLM
身份验证登录
334 VXNlcm5hbWU6
QUtJQUk3WDNURUI0NEVKNlRSU1E=
334 UGFzc3dvcmQ6
QXJWZJL4EU1FTVC1WFNFR3ZXVxVPODNHRJFKCG8XMFPEURXY0ZSNGVHQXM=
235身份验证成功。
调试SMTP:use8bit false
邮寄地址:
250行
RCPT至:
250行
调试SMTP:已验证的地址
调试SMTP:“jeremygoodell@jeremygoodell.com" 
资料
354使用结束数据。
日期:2013年5月15日星期三08:44:47-0500(CDT)
发件人:“杰里米-goodell@hotmail.com" 
答复:“杰里米-goodell@hotmail.com" 
至:jeremygoodell@jeremygoodell.com" 
消息ID:
主题:请加入ACT Aspire Hari AV测试交付门户
MIME版本:1.0
内容类型:多部分/混合;
boundary=“---=”U部件第6部分第16196755.1368625487826节”
------=\u第6部分\u 16196755.1368625487826
内容类型:text/html;字符集=UTF-8
内容传输编码:7bit

>>>>HTML邮件正文已删除我将在这里继续介绍问题的解决方案。Amazon AWS SMTP服务维护一个“14天抑制列表”,该列表是过去14天内反弹的电子邮件地址列表。通过Amazon SMTP服务发送的任何电子邮件在尝试发送到禁止列表上的地址时都将失败。不幸的是,他们没有报告错误,而是向发件人发送“无法送达”的回复。所以,如果你有一个自动发送服务,你永远不会知道

我碰巧找到了它,因为当我设置自己的AWS SMTP服务器时,我输入了自己的一个电子邮件地址作为自动电子邮件的发件人。当我登录到该电子邮件帐户时,我看到无法发送的消息,这说明目标电子邮件在禁止列表中

Amazon允许您登录电子邮件服务控制台并从禁止列表中删除电子邮件地址。您只需输入电子邮件地址,单击“删除”,然后单击“删除”