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 - Fatal编程技术网

Email 解析被退回的电子邮件

Email 解析被退回的电子邮件,email,Email,解析被退回(无法送达)的电子邮件的最佳方法是什么 当一封电子邮件被退回到我的服务器时,我想知道它被退回的原因(软/硬)以及无法送达的电子邮件地址。然后我可以在我的数据库中适当地处理它和/或在下次登录时标记用户更新他们的电子邮件 我的目标是保护我的域名的邮寄声誉。我只发送事务性的电子邮件,但过了一段时间,盒子里的一些邮件就过时了,邮件又回复了过来。我不想继续每周发送电子邮件到那些反弹的地址 我最近找不到很多关于这方面的问题,也没有一个真正的解决方案: (一) (二) 我希望有某种开源库来帮助解析无

解析被退回(无法送达)的电子邮件的最佳方法是什么

当一封电子邮件被退回到我的服务器时,我想知道它被退回的原因(软/硬)以及无法送达的电子邮件地址。然后我可以在我的数据库中适当地处理它和/或在下次登录时标记用户更新他们的电子邮件

我的目标是保护我的域名的邮寄声誉。我只发送事务性的电子邮件,但过了一段时间,盒子里的一些邮件就过时了,邮件又回复了过来。我不想继续每周发送电子邮件到那些反弹的地址

我最近找不到很多关于这方面的问题,也没有一个真正的解决方案:

(一)

(二)

我希望有某种开源库来帮助解析无法送达的电子邮件,但似乎找不到类似的东西。当然人们已经处理这个问题很长时间了

我希望在我的服务器上处理这个问题,而不是通过sendgrid/mandrill/mailgun这样的服务


谁能给我指出正确的方向吗?(我正在使用Ubuntu和Postfix)

有几种方法可以做到这一点

1)GREP

事实证明,postfix在其日志文件中保留了反弹信息。所有永久性错误的dsn状态以5开头。使用grep,您可以获得具有该状态代码的电子邮件列表:

grep " dsn=5." /var/log/mail.log | grep -o -P " to=<(.+?)>" | sort | uniq -c

此解决方案的实现当然更加复杂,但可能是大型邮件列表的唯一选项。

在发送任何电子邮件之前,考虑使用MailboxValidator免费API来筛选电子邮件地址。如果可以的话,最好避免反弹

如果你愿意写一些代码的话

否则,您的另一个选择是将邮件列表的CSV上载到MailboxValidator批量验证页面并清除它们。验证完成后,您可以下载结果并导入回数据库

bouncelist: "| php mybounceparser.php"