2017-05-04 102 views
0

我使用PHPMailer發送電子郵件。當電子郵件被退回時,它會轉到如下帳戶:[email protected]PHPMailer:設置自定義標題以在退回電子郵件中標識它

在我管理此帳戶([email protected])的電子郵件客戶端中,我可以選擇添加過濾器以重定向根據「主題」,「發件人」,「收件人」等字段的比較結果,發送給任何其他電子郵件帳戶的電子郵件。那很好。

的問題是,反彈的電子郵件丟失所有我的頭/主題......我設置與PHPMailer的,因爲它是總是服務器組成的,因爲它遵循:

所以我沒有引導標記用於添加過濾器。

那麼,有沒有什麼辦法可以在PHPMailer中設置一個標記(如自定義標題等),REMAINS在退回的電子郵件中?例如,像有這個:

  • 主題:未發送郵件退回寄件人(bounce_redirect)

所以在主題(或地方)單詞「bounce_redirect」將表明我的電子郵件客戶端,這電子郵件必須重定向。

在此先感謝。

回答

2

不幸的是,你不能在頭文件中強制這個問題;唯一的解決方法是使用VERP addressing,這是唯一可以保證它保留關於消息和它最初發送到的地址的信息的方法。 MS Exchange通常發送沒有提及消息發送到的原始地址的退回消息,因此VERP是唯一的解決方案。

對於你的榜樣,典型的VERP地址是:

[email protected] 

您的郵件服務器將被設置爲點的account_bounces前綴和刪除,並轉換=@在當地的部分提取原始地址。

在PHPMailer的您將設置此作爲Sender屬性,如:

$mail->Sender = '[email protected]'; 

這將被用作SMTP郵件寄件者,和由接收服務器轉換爲Return-Path 報頭,並且因而將當消息被反彈時用作To地址。

您可以進一步閱讀並在Sender地址中嵌入附加信息,該地址可用於識別郵件列表,特定郵件等。

+1

哇,非常感謝Synchro !,你保存了一天。我很迷茫。但是你把我帶到了正確的地方。我做了一些修改並且工作(我用「+」而不是「 - 」)。如下所示:$ mail-> Sender ='[email protected]'; – Hector

相關問題