Email

後綴:如何僅在標題前添加一次?

  • March 31, 2020

我想為來自特定域的每封外發郵件添加一個帶有後綴的標題。目前我使用:

check_sender_access hash:/etc/postfix/prepend

使用 /etc/postfix/prepend:

my.domain PREPEND Header: value

這很好用,但是當我向多個收件人發送電子郵件時,會多次將標題添加到每個外發郵件中,每個收件人一個。

因此,當我向 4 個人發送郵件時,他們每個人都會收到一封郵件,其中包含 4 次標題。

對此沒有“簡單”的解決方案。您需要在 master.cf 中定義第二個 smtpd 實例,讓它訪問它自己的清理實例,並為此清理實例定義一個 header_checks 映射。然後,您將在該郵件中存在的某個唯一標頭(即 message-id)上添加標頭。

只是為了記錄,因為我偶然發現了這個相當老的問題(因為我有一個非常相似的問題):

一個簡單的解決方案:將您的 check_sender_access 指令放入 smtpd_data_restrictions。

說明:據我檢查, smptd_relay|recipient|sender|client_restrictions 為消息的每個收件人評估一次,至少如果設置了 smtpd_delay_reject (在大多數情況下這是預設值和合理的)。因此,如果您將其放入其中任何一個中,則每個消息的收件人都會預先添加一次標頭。當然,這僅在您的條件不依賴於郵件的收件人列表時才有效。

引用自:https://serverfault.com/questions/531801