Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Email 邮枪:信息“;“已接受”;但需要很长时间才能交付(或不交付)_Email_Mailgun - Fatal编程技术网

Email 邮枪:信息“;“已接受”;但需要很长时间才能交付(或不交付)

Email 邮枪:信息“;“已接受”;但需要很长时间才能交付(或不交付),email,mailgun,Email,Mailgun,我正在为我维护的网站使用Mailgun,通常Mailgun工作得很好,但我遇到了一个奇怪的问题。我的脚本调用HTTP API使用Mailgun发送消息,这些消息在我的日志中显示为“已接受”,但需要很长时间才能“传递”,通常根本无法传递,只是保持为“已接受”。是否有人遇到过类似的错误,或者有人能提出一种解决方法吗?我猜这是在提供给API的参数中,但我一生都无法解决这个问题 问题存在于不同的收件人域和一天中的不同时间 下面是一条有问题消息的JSON日志。当然,我已经更改了地址和域 { "ta

我正在为我维护的网站使用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"
}
{
“标签”:[],
“时间戳”:1411498829.247304,
“信封”:{
“目标”:“我自己的”-email@address.com", 
“运输”:“,
“发件人”:noreply@the-“有问题的网站”
}, 
“收件人域”:“address.com”,
“事件”:“已接受”,
“活动”:[…],
“用户变量”:{},
“旗帜”:{
“已验证”:正确,
“is系统测试”:错误,
“is测试模式”:false
}, 
“信息”:{
“标题”:{
“到”:“我自己的”-email@address.com", 
“消息id”:“20140923190027.112157。29352@the-有疑问的网站“,
“发件人”:“\”有问题的网站.com\”,
“主题”:“Dom,您的密码已重置。”
}, 
“附件”:[],
“收件人”:[
“我自己的-email@address.com"
], 
“尺寸”:556
}, 
“收件人”:“我自己的”-email@address.com", 
“方法”:“http”
}

每当邮件在Mailgun日志中显示为“已接受”时,这表示Mailgun已接受邮件并将其排队等待发送。邮件的传递速度应该相当快,但是如果您一次提交了大量邮件,或者如果收件人ESP正在限制来自您帐户的IP/域的邮件,则邮件可能会排队一段时间


我建议通过您的Mailgun帐户打开一张支持票证,并提供一些邮件ID,以便在邮件提交给Mailgun后,支持团队可以调查这些延迟的确切原因。

如果这种情况经常发生,Mailgun很可能将您锁定在其低层IP地址上。我想这是免费帐户的默认设置,因为他们不想让不认真/不合法的新用户“污染”他们的好地址

您可以在类似这样的站点上检查IP地址的“质量”。在已传递邮件的Mailgun日志中找到以下行:

"sending-ip": "XXX.XX.XXX.XXX"

如果发件人分数显示70年代的分数,那就是你的问题。按照Chris的建议,给Mailgun发一张支持票,看看他们是否能帮你找到一个更高质量的IP地址。我这样做了,我的电子邮件现在是从一个90年代的分数IP地址发送的。从那以后就再也没有延迟过。

对于使用默认Mailgun域的家伙,他们将像我一样在这里结束:

Mailgun确实将我的电子邮件记录为“已接受”和“已发送”,但我的收件箱中没有收到任何电子邮件


要解决此问题,您需要授权收件人电子邮件地址:

在发送到域名时,电子邮件未送达的原因是因为帐户上没有路由。请注意,弹性计划不能创建路线;只有基础和更高的计划可以使用这个特性。每次IP被限制时都必须打开一张支持票并没有多大帮助。现在是2016年5月,这仍然是一个问题。这不是一个声誉问题,因为我的应用程序在延迟后发送电子邮件,这些电子邮件立即发送。但偶尔一条随机消息需要2-3个小时才能发送。在我的情况下,从命令行发送的一行邮件会立即发送,但通过API提交的完整HTML邮件会花费很长时间。发件人分数是针对公司的;为个人用户提供任何服务?用于检查IP或域信誉。。。