当我以服务他人的方式发送电子邮件时,我应该使用“回复”头部吗?

145
假设我们有一个应用程序,充当中间人,允许A公司向他们的客户发送报告。
公司A → 公司B(即我)→ 公司A的客户
在收到报告后,我们会向收件人发送电子邮件通知,但这些通知必须来自我们公司的通知电子邮件地址,例如:
joe.bloggs@a.com → notifications@b.com → peter@c.com
现在,客户倾向于回复这些电子邮件通知,希望它们能够返回给在公司A发送报告的人。然而,它们最终回到了我们的地址notifications@b.com。
一个简单的解决方案可能是在我们发送的通知中将“回复”(Reply-To)头更改为相关的公司A地址,例如:
joe.bloggs@a.com → notifications@b.com [回复:joe.bloggs@a.com] → peter@c.com
但我主要关注的是:
  • 邮件地址和域名在“发件人”和“回复地址”字段之间存在完全的差异,可能会使垃圾邮件或钓鱼过滤器更容易标记这些邮件。
  • 并非所有的电子邮件客户端在人们实际点击“回复”时都会尊重“回复地址”字段,而是直接使用“发件人”字段。这是一个较小的问题,除非普遍存在。

这些担忧是否有根据?还是我应该担心其他问题?

5个回答

184

我使用了dkarp的解决方案,但是在使用gmail时会被过滤为垃圾邮件。改用回复地址头(或者结合使用,尽管gmail显然不需要它)。这是linkedin如何实现的:

Sender: messages-noreply@bounce.linkedin.com
From: John Doe via LinkedIn <member@linkedin.com>
Reply-To: John Doe <John.Doe@gmail.com>
To: My Name <My.Name@gmail.com>

自从我切换到这种格式后,Gmail不再将我的邮件标记为垃圾邮件。


6
这是我们一直采用的方法。然而,我们现在遇到了一些服务器的问题(...呃... AOL),它们退回邮件并声明我们的邮件不符合他们的政策。我们收到的唯一解释是回复地址标头和发件人标头有不同的域名,即使这似乎正是使用两个不同标头的目的。越来越令人沮丧的是,在多租户应用程序上依赖电子邮件进行B2B通信。 - Brian H.
4
@BrianH:AOL和Yahoo现在似乎都采用了严格的DMARC验证。这导致我的邮件发送给AOL时存在“发件人”地址的问题。http://www.emailonacid.com/blog/details/C4/could_yahoo_and_aols_dmarc_policies_destroy_your_deliverability. - EML
4
这种方法的缺点是收件人的地址簿(在许多电子邮件客户端中)现在包含“John Doe通过LinkedInmember@linkedin.com”。当不知情的收件人想再次联系John Doe时,在编写新消息的收件人字段中输入他的姓名时,该地址会弹出(因此,“通过LinkedIn”从用户体验角度来说非常重要)。 - smhg
1
@EML提供的博客文章更新链接:https://www.emailonacid.com/blog/article/industry-news/could_yahoo_and_aols_dmarc_policies_destroy_your_deliverability/... 该文章深入探讨了aol/yahoo.com问题。 - Lambart
1
作为相关说明,看起来通过Gmail发送带有建议标题的电子邮件将创建一个新条目X-Google-Original-From并将From放置在那里,然后用Sender替换From - Jens
显示剩余3条评论

108

您可能需要考虑将客户的姓名放在发件人标头中,将您的地址放在寄件人标头中:

From: Company A <joe.bloggs@a.com>
Sender: notifications@b.com

大多数邮件客户端会将此显示为“来自notifications@b.com代表公司A”,这是准确的。然后,使用公司A的地址作为Reply-To看起来也不奇怪。

RFC 5322中指出:

“From:”字段指定消息的作者,即编写该消息的个人或系统的邮箱。“Sender:”字段指定实际传输消息的代理的邮箱。例如,如果秘书代表他人发送消息,则秘书的邮箱将显示在“Sender:”字段中,而实际作者的邮箱则显示在“From:”字段中。


6
我并不是特别想让我的主人回答得到赞同,但值得一提的是这个有用的问题和答案,基本上也证实了dkarp的答案:https://dev59.com/UnE95IYBdhLWcg3wm_Qu - Gavin
1
如果是为了循环,这样做行不通。@a和@b是不同的域,大多数服务器不允许代表另一个域的人发送邮件。B将不得不转发它,但您始终可以添加隐藏的多部分。每个人都知道如何转发到另一个地址。 - Aridane Álamo
3
在使用这种方式时,从字段的可传递性方面是否有任何2018年以后的更新? - David Alan Hjelle

2

我最近研究了这个问题,我的答案与其他人相同,但是我认为对于外行人来说它的定义更清晰:

  1. From 应该被描述为消息的作者
  2. Sender 应该被描述为消息的传输者
  3. Reply-To 不应与 1 和 2 混淆,它只是表示如果收件人选择回复,则应该写到哪里

因此,在某些客户端(例如 Outlook 2003)中,您会看到

发件人:Sender 代表 From


0
阅读完所有内容后,我可能会在电子邮件正文中嵌入超链接,如下所示:
要回复此电子邮件,请单击此处 <a href="mailto:...">Third.Party@theirdomain.com</a>

-4
这是对我有用的代码:
Subject: SomeSubject
From:Company B (me)
Reply-to:Company A
To:Company A's customers

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接