什么是Sendgrid ?
Sendgrid为国际知名的SMTP厂商之一,不熟悉的读者可能会接着问那SMTP厂商是什么厂商?
简单来说SMTP厂商提供较可靠的Email邮件服务器,并经过特殊的Server配置,使得透过SMTP厂商来发送电子邮件时,有比较低的几率会被收件者的邮件服务器归类为垃圾信件,重点是您就不需要自己去架设Email邮件服务器,也不需要花费资源去维护Email邮件服务器。
Sendgrid 目前有超过80,000 的付费客户,每个月平均发送的Email达900亿封, 知名的使用客户包含Uber、Spotify 与 airbnb 皆是使用Sendgrid的企业用户,目前国际使用度高的SMTP厂商,除了Sendgrid之外,还有 SMTP.com 、Sendinblue、Mailgun、G Suite ..等等,而关于SMTP的选择与方案优劣,依据各企业与需求不同,所适合的方案也不尽相同,本篇文章就不多做赘述,由于欧斯瑞本身使用Sendgrid的客户不占少数,所以今天来分享Sendgrid的信件发送信件时出现421.5.7.1时的原因为何。
错误代码421是什么?
有经验的人会知道error 421开头,通常是收件者端因为某些原因,推延发信者寄出的信件,例如:收件者的邮件服务器连线过于频繁、收件者信箱爆满、收件者的邮件服务器维护中…等等,所以大部分的error 421不是常态的,所以通常接收到421 error问题,Sendgrid 会在75小时内,每一小时尝试寄送一次(总计尝试75次),对于SMTP 的其他错误代码有兴趣的读者,可参考下方连结。
https://sendgrid.com/docs/for-developers/sending-email/smtp-errors-and-troubleshooting/
那421.5.7.1 是否就放着等他重新寄送就好?
421.5.7.1 比较特别,是代表收件者的邮件服务器,“直接阻挡”Sendgrid 发出的信件,所以Sendgrid遇到收件者服务器回复的错误代码为421.5.7.1 时,Sendgrid就不会浪费时间在75小时内,每小时自动尝试重复传送,所以可以发现STATUS 状态是 Not Delivered(如下图所示)。
Sendgrid会将421.5.7.1 的邮件地址归类到Bounces 里面,避免重复寄信浪费资源在拒收的收件者,您可以在Sendgrid 后台 → Suppressions → Bounces 可以看到被归类为Bounces的收件者(下图所示)。
要如何解决421.5.7.1问题?
通常遇到这种421.5.7.1的几率不高,可能发生的情况例如:
员购网站使用第三方SMTP厂商,而由于员购的资格是依据Email来判断这个人是否符合员工购物资格,恰巧员工的Email是自家的工程师架设的邮件服务器,且有较严格的安全性防范措施,就有可能发生员工用自己公司的Email去员购网购物,但是交易信件一直被自家的邮件服务器给rejected的情况发生。
由于是收件端rejected的部分,所以您需要请维护自家邮件服务器的工程师,把sendgrid.net 给加入Whitelist(白名单)即可解决421.5.7.1 rejected的状况发生。