我正在考虑实现我自己的可以接收和存储邮件的 SMTP 服务器。由于这是一个小型的业余项目,我更愿意让代码保持简单——例如,我不想实现发送邮件的逻辑。但是,RFC 5321的以下部分让我担心:
服务器必须
对邮件数据指示结束后的处理仅
部分成功的情况进行特殊处理。如果在接受多个
收件人和邮件数据后,SMTP 服务器发现邮件
数据可以成功传递给部分收件人,但不是全部收件人,则可能会发生这种情况
。在这种情况下,对 DATA 命令的响应必须是
OK 响应。但是,SMTP 服务器必须编写并向
消息的发起者发送“无法投递的邮件”通知
消息。
这是否意味着,即使我通常只250 OK
在确定邮件已安全存储时才返回,我也被迫实施发送失败通知的东西,以防万一有人决定向现有邮件和非邮件邮件发送邮件现有的邮件地址?有什么办法可以在不违反标准的情况下绕过它?如果没有,452 Too many recipients (my RCPT limit is 1, not 100 as required by RFC 5321)
当有人试图将邮件发送给多个收件人时,只发回会有多糟糕?