2011-06-16 105 views
9

我正在寫一個應用程序,允許用戶發送電子郵件到動態創建的郵件列表。例如,用戶可以發送電子郵件至[email protected](該網站是體育聯盟的聯賽管理網站),該電子郵件將發送給該​​用戶團隊中的所有人。我試圖弄清楚電子郵件標題應該如何正確傳送電子郵件,並使所有From和To字段看起來正確。正確的電子郵件標題提供郵件列表郵件

在Gmail中,當您從郵件列表中收到一封電子郵件(我正在查看來自Google羣組的電子郵件)時,它表示它來自發送該郵件的人並將其發送到列表地址,但電子郵件已發送給我。除了Delivered-To:標題外,我的地址不會出現在任何標題中。這是一些谷歌的魔力,還是我可以做同樣的事情?

獎金問題:我使用Postfix + OpenDKIM簽署電子郵件。如果「發件人」域與我指定的域匹配,它將簽署該郵件,但如果「發件人」域匹配,則不會簽名。我如何告訴它使用發件人域來代替。

回答

19

From:和To:標題用於「顯示目的」(這是在用戶電子郵件應用程序中作爲發件人和收件人呈現的內容)。他們不必匹配被稱爲「信封發件人」/「信封收件人」的電子郵件的真實發件人/收件人,並且在smtp協議中指定(「MAIL FROM:....」「RCPT TO。 ..「)。

例子:

郵件來自[email protected],去[email protected],並交付給[email protected]

從Alice到列表服務器:

信封發件人:[email protected]
信封收件人:[email protected]
標題:[email protected]
標題:[email protected]

從列表服務器鮑勃:

信封發件人:[email protected](所以錯誤消息轉到列表服務器,而不是愛麗絲)
信封收件人:[email protected]
頭:[email protected](鮑勃看到愛麗絲作爲發件人,這不是由列表服務器修改)
包頭:[email protected](同樣,未經列表服務器修改)

可選:回覆頭:列表@示例。組織(因此,如果鮑勃按答覆,答覆轉到列表 - 由列表服務器添加) - 請注意:有些人不喜歡reply-to header munging

其它標題:

某些電子郵件客戶端也明白這些附加頭和提出了特殊的郵件列表功能,給用戶:

  • 列表-ID
  • 列表後
  • 列表幫助
  • 列表退訂
  • 列表所有者

https://www.ietf.org/rfc/rfc2919.txt https://www.ietf.org/rfc/rfc2369.txt

此外,您可以添加頁眉

Precedence: bulk 

這例如告訴智能外出實現不發送不在辦公室的回覆到列表。但這是由RFC 2076阻止。

+1

謝謝,這很完美。我終於明白了信封和郵件標題之間的區別。僅供參考,Google將其Precedence頭部設置爲「list」,而不是「bulk」。 – 2011-06-18 00:44:18

+4

@lyoshenka請勿設置回覆。這違反了RFC2822並徹底打破了郵件程序。這也會導致隱私問題,如果有人遇到回覆,希望它是私人的。回覆*必須*僅由消息作者設置。 – 2013-02-16 04:26:47

+0

我添加了一個警告和一個鏈接到郵件員頁面解釋標題消息。有些清單是做的,有些則沒有。 – Gryphius 2013-02-16 08:55:21

-1

看起來OpenDKIM總是使用From:標題,所以你不得不求助於簽署所有的電子郵件。有關說明,請參閱this