我使用Mailgun作为我维护的网站,通常Mailgun工作得很好,但我遇到了一个奇怪的问题。我的脚本调用HTTP API使用Mailgun发送消息,然后这些消息在我的日志中显示为"被接受",但是然后需要很长时间才能被发送",经常失败完全交付,只是保持"接受"。有没有人遇到类似的错误或任何人都可以提出修复方法?我在提供给API的论据中猜测它,但我无法解决问题。
对于不同的收件人域和一天中的不同时间存在问题。
有问题的消息的JSON日志如下。当然,我已经改变了地址和域名。
{
"tags": [],
"timestamp": 1411498829.247304,
"envelope": {
"targets": "my-own-email@address.com",
"transport": "",
"sender": "noreply@the-site-in-question.com"
},
"recipient-domain": "address.com",
"event": "accepted",
"campaigns": [],
"user-variables": {},
"flags": {
"is-authenticated": true,
"is-system-test": false,
"is-test-mode": false
},
"message": {
"headers": {
"to": "my-own-email@address.com",
"message-id": "20140923190027.112157.29352@the-site-in-question.com",
"from": "\"the-site-in-question.com\" <noreply@the-site-in-question.com>",
"subject": "Dom, your password was reset."
},
"attachments": [],
"recipients": [
"my-own-email@address.com"
],
"size": 556
},
"recipient": "my-own-email@address.com",
"method": "http"
}
答案 0 :(得分:52)
如果这种情况经常发生,Mailgun很可能会让您使用其中一个低层IP地址。我想这是免费帐户的默认帐户,因为他们不想污染&#34;污染&#34;他们与可能不严肃/合法的新用户的良好关系。
您可以查看&#34;质量&#34; Sender Score等网站的IP地址。在已发送邮件的Mailgun日志中找到此行:
"sending-ip": "XXX.XX.XXX.XXX"
如果发件人得分在70年代显示得分,则表明您的问题。正如克里斯建议的那样,向Mailgun发送支持票,看看他们是否可以获得更高质量的IP地址。我这样做了,我的电子邮件现在是从一个分数为90的IP地址发送的。从那以后,Haven就没有一次延迟。
答案 1 :(得分:43)
每当消息显示为&#34;已接受&#34;在Mailgun日志中,这表明Mailgun已接受该消息并将其排队等待传递。该邮件应该相当快速地传递,但是如果您一次提交大量邮件或者收件人ESP限制来自您帐户的IP /域的邮件,它可能会排队一段时间。
我建议您通过Mailgun帐户打开支持服务单,并提供一些消息ID,以便支持小组在邮件提交给Mailgun后可以调查这些延迟的确切原因。< / p>
答案 2 :(得分:0)
发送至域名时电子邮件未发送的原因是该帐户中没有路由。需要注意的是,Flex计划无法创建路线。只有Foundation和更高级别的计划可以使用此功能。
答案 3 :(得分:-1)
对于使用默认Mailgun域名的人,他们会像我一样在这里结束:
Mailgun将我的电子邮件记录为“已接受”和“已发送”,但我的收件箱中未收到任何电子邮件。
要解决此问题,您需要授权收件人电子邮件地址:Read More Here