PHP邮件仅通过SMTP发送到BCC接收器

时间:2013-03-03 16:13:26

标签: php email smtp mailing-list

我正在写一个php的邮件列表,并且需要一种方法来强制通过smtp(Postfix)在localhost上发送邮件,只是真的将该邮件发送到BCC接收器。

(让To和Cc标题在邮件中发送,但不发送邮件给他们)

原因:如果邮件被发送到列表,则之前会将邮件发送给这些接收者;在PHP脚本中,我编辑邮件(删除禁止的单词,添加一个带注销链接的页脚等),并希望发送它比通过smtp(mail()不好,它没有错误处理)

有没有任何类或简单的方法来做到这一点?或者是否可以留在后缀队列中(邮件通过管道传输到php脚本)

邮件,我发送至:mailing.list-adress(因为必须显示邮件已发送到邮件列表)和所有其他Tos,但脚本不应发送到该地址,它应该发送给bcc地址。

邮件流

Sender => specific-list@server.de => lists@server.de => php-programm =>降

每5分钟(或用户指定的其他时间)将推出列表:

mail in database => script =>收件人为bcc,to是list-adress(specific-list@server.de)

邮件看起来像:

From: original-sender@original-server.org
To: specific-list@server.de, <any other tos from original mail>
Cc: <any ccs from original mail>
Bcc: <all the list subscribers> //JUST REALLY SEND TO THIS ADRESSES
Subject: [Listname | Topicid] Topic Name

Content:
<original content>
--
signature for unsubscribe, etc.

我知道如何解决这个问题,但需要帮助才能做到这一点。

  1. 我创建了一个内部邮件地址,转发给我的真实收件人
  2. 我将邮件发送到该地址
  3. Postfix必须处理该邮件,而不是作为外发邮件,而是作为发送给该地址的新邮件。
  4. 因为它是收到的邮件,后缀不会传递给所有其他接收者,它只是传递到该指定地址(即转发)

1 个答案:

答案 0 :(得分:3)

每当您按照普遍建立的规则发送邮件时,您需要拥有收件人。如果您想将邮件发送给自己或仅为此目的的地址,那很好。一旦你有了一个To你可以继续创建你的密件。