Mailgun:消息“接受”,但需要很长时间才能交付(或未交付)
我正在使用Mailgun来维护我的网站,通常Mailgun工作的很好,但是我遇到了一个奇怪的问题。 我的脚本调用HTTP API来使用Mailgun发送消息,然后这些消息在我的日志中显示为“已接受”,但是花费很长时间才能“交付”,通常无法完成交付,而只剩下“公认”。 有没有人遇到类似的错误,或者有人可以build议一种方法来解决它? 我猜这是在提供给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" }
只要邮件在Mailgun日志中显示为“已接受”,表示Mailgun已接受邮件并将其排入队列以供传递。 该消息应该相当快地传递,但是如果您一次提交大量消息,或者如果收件人ESP正在限制来自您的帐户上的IP /域的消息,它可以排队一段时间。
我build议您通过Mailgun帐户开通一张支持凭单,并提供一些消息ID,以便支持团队可以在消息提交给Mailgun后调查这些延迟的确切原因。
如果这种情况经常发生,很可能Mailgun会将您置于其低层IP地址之一。 我想这是免费账户的默认设置,因为他们不想用可能不认真/合法的新用户“污染”他们的好地址。
您可以在发件人评分等网站查看IP地址的“质量”。 在交付邮件的Mailgun日志中find以下行:
"sending-ip": "XXX.XX.XXX.XXX"
如果发件人得分在70年代显示,那就是你的问题。 像克里斯build议的那样向Mailgun发送一张支持票,看他们是否可以让你进入更高质量的IP地址。 我这样做了,我的电子邮件现在正从90年代的IP地址发送。 自从那以后没有任何延迟。