答案1
前三位数字“550”是 SMTP 协议所必需的代码。这用于在 SMTP 对话期间处理错误、成功或失败。
带点的版本是所谓的扩展返回代码。在此代码中,您可以为人类或自动脚本指定更详细的响应。但它们对于 SMTP 服务器的工作来说并不是必需的。
但是(当您使用扩展错误代码时)您需要的是数字错误代码后跟一个点号。而不是相反。并且不仅仅是没有数字的扩展错误代码。
值不必相等,但必须匹配。因此,您可以得到“554 5.7.1 服务不可用”。两者必须以 5 开头,但最后一部分不必相等。
答案2
RFC 3463 的概述提供了一个很好的答案 - 点号是现代标准,直数字响应代码是传统标准。编辑:“传统”的措辞不当,因为旧代码对于协议信号传输仍然是必要的,但没有提供新代码的细节。
需要一种标准的机制来报告邮件系统错误,其内容要比 SMTP 提供的有限集合和邮件消息中发送的系统特定文本描述更加丰富。迫切需要一种丰富的机器可读、独立于人类语言的状态代码,用于传递状态通知。本文档为此目的提出了一组新的状态代码。