说出 SMTP 4xx 代码立即失败的一个充分理由

Ave*_*yne 9 smtp message-queuing

我真的很好奇这个。问题(以粗体突出显示):


有人可以说出一个好理由让他们的电子邮件服务器在 4xx 代码上永久设置为自动失败/立即失败吗?


因为坦率地说,听起来“他们的”设置是开箱即用的。 SMTP 不是即时消息。 不要像 IRC 或 Jabber 或 MSN 或insert-IM-technology-here那样对待它。我不知道是什么让人们对 SMTP 设置抱有“立即交付或失败”的心态,但他们需要停止这样做。它只是简单地破坏了东西。每隔两三年,我就会偶然发现这一点。某个地方的某个人以他们无限的智慧决定 4xx 代码是立即失败的,突然间它的OMGWTFBBQ 内网坏了,HALP SKY IS FALLING而不是“哦,它会在大约 30 分钟内重新尝试交付”。让我惊讶的是它突然变成了“我的”问题,消息无法通过, 错误配置了“他们的”SMTP 服务。

如果以这种方式永久设置您的服务器有正当理由,那么第一个好的答案将得到检查。

如果没有充分的理由(我怀疑没有),那么第一个听起来不错但在逻辑上仍有缺陷的答案将得到检查。

Joh*_*ers 2

来自 RFC:

4.X.X   Persistent Transient Failure

   A persistent transient failure is one in which the message as
   sent is valid, but some temporary event prevents the successful
   sending of the message.  Sending in the future may be successful.
Run Code Online (Sandbox Code Playgroud)

很明显,4xx 应该只为了响应临时(瞬态是不好的措辞)问题而发送。因此,没有正当理由将其视为立即错误。应按例行重试进行响应。

话虽如此,过度使用粗体和斜体表明您不仅认真对待这件事,而且还针对您个人。我能建议的最好的办法就是放松,不要因为别人的白痴而感到如此沮丧和紧张。

当有人抱怨时,只需指出 RFC 的该部分(忽略 RFC 不是标准这一事实)并提醒他们,您无法控制其他人如何设置他们的系统。