Return-Path 标头的正确格式

Posted

技术标签:

【中文标题】Return-Path 标头的正确格式【英文标题】:Correct format of an Return-Path header 【发布时间】:2010-10-28 22:17:25 【问题描述】:

我的应用程序使用 sendmail 发送出站电子邮件。我使用以下格式设置“发件人:”地址:

Fred Dibnah <fred@dibnah.com>

我还使用完全相同的格式设置 Reply-ToReturn-Path 标头。

这似乎在绝大多数情况下都有效,但我至少见过一个失败的例子,即上述字符串的名称部分包含句点(句号)时:

Fred Dibnah, Inc. <fred@dibnah.com>

这在 TMail 代码的深处失败了(我正在使用 Ruby),但这似乎是一件非常有效的事情。

我的问题是,我真的应该只使用电子邮件地址而不是上述名称 + 电子邮件格式来设置 Return-PathReply-To 标头吗?例如

fred@dibnah.com

谢谢。

【问题讨论】:

【参考方案1】:

遇到这种情况,最好求助RFCs.

在阅读了您的问题后,似乎 不应该设置 Return-Path 值。最终目标 SMTP 服务器应该在将邮件传输到您的邮箱时设置此值(http://www.faqs.org/rfcs/rfc2821.html 从 4.4 开始)。

根据http://www.faqs.org/rfcs/rfc2822.html,Reply-To字段可以有以下格式

    本地部分“@”域(例如 fred@dibnah.com) 显示名称(例如 Fred Dibna)

我建议使用选项 1,因为它似乎是最基本的,并且您可能会遇到较少的问题。在选择选项 1 时,您的 Reply-To 字段应如下所示:

Reply-To: fred@dibna.com

【讨论】:

阅读规范?没办法... :-)

以上是关于Return-Path 标头的正确格式的主要内容,如果未能解决你的问题,请参考以下文章

通过 Return-Path 标头检测退回的邮件

Return-Path 标头与实际的电子邮件退回收件人有何不同?

如何在 PHP 中正确设置返回路径?

azure 门户中的“HTTP 标头之一的值格式不正确”

Azure 服务器未能对请求进行身份验证。确保授权标头的值格式正确,包括签名

如何正确格式化发布请求的正文?