2010-07-29 73 views
3

我正在构建一个邮件客户端,它使用唯一标识符来标识(对话)对话并通过创建线程来完成。 这个唯一的ID现在附加到主题行。没有主题行中的id,邮件就会“丢失”。自定义标头邮件()和垃圾邮件分数

而且它clothers主题行那就要容易上手得多,如果我可以在ID添加到自定义头像这样的事实:

$to  = '[email protected]'; 
$subject = 'the subject'; 
$message = 'hello'; 
$headers = 'From: Webmaster <[email protected]>' . "\r\n" . 
    'Reply-To: [email protected]' . "\r\n" . 
    'X-myID: MghT3s' . "\r\n" . 
    'X-Mailer: PHP/' . phpversion(); 

mail($to, $subject, $message, $headers); 

这可能吗?那么邮件会因此得到更高的垃圾邮件分数吗?

//编辑 通过回复使用自定义标题的发送电子邮件,标题不被转移,所以这确实不是一个解决方案。

//编辑2 我正在查看回复标题。但不知道是否使用全部电子邮件客户端。

回答

6

是的,这是可能的,不,你可能不会得到更高的垃圾邮件分数。任何以'X-'开头的头文件都是合法的扩展头文件。有很多这样的,与垃圾邮件过滤软件,电子邮件分发列表等有关。

具有扩展标头并不是垃圾邮件的表面证据。

但是您确定不想使用In-Reply-To头或现有的唯一消息ID(消息ID)来构建线程吗?

+3

+1参考In-Reply-To头,解决此问题的正确方法... RFC2822第3.6.4节和附录2 – 2010-07-29 13:04:51

+0

但是,是否所有邮件客户端都使用回复邮件头? – richardverbruggen 2010-07-29 13:14:49

+0

@richardverbruggen:总之,是的。 – Borealid 2010-07-29 15:24:18

1

如果用户使用自己的邮件代理回复,这个邮件头如何解决您的问题?换句话说,回复将发送不带X-myID标题。

跟踪消息的常用方法是将对话ID添加到主题或文本中,并告诉用户不要删除原始邮件文本或修改标题。

关于beeing标记为垃圾邮件的标题 - 我真的不这么认为。