Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
仅通过SMTP向密件抄送收件人发送PHP邮件_Php_Email_Smtp_Mailing List - Fatal编程技术网

仅通过SMTP向密件抄送收件人发送PHP邮件

仅通过SMTP向密件抄送收件人发送PHP邮件,php,email,smtp,mailing-list,Php,Email,Smtp,Mailing List,我正在用php编写一个邮件列表,在本地主机上通过smtp(Postfix)发送邮件时需要一种强制方式,只需将邮件真正发送给BCC收件人即可 (必须在邮件中发送邮件并抄送邮件头,但不向其发送邮件) 原因:如果一封邮件被发送到列表中,那么它之前就被发送给了那些接收者;在php脚本中,我编辑邮件(删除禁止的单词,添加带有签出链接的页脚等),并希望通过smtp发送邮件(mail()不好,它没有错误处理) 有什么课程或简单的方法可以做到这一点吗?或者可以留在后缀队列中(邮件通过管道传输到php脚本) 我发

我正在用php编写一个邮件列表,在本地主机上通过smtp(Postfix)发送邮件时需要一种强制方式,只需将邮件真正发送给BCC收件人即可

(必须在邮件中发送邮件并抄送邮件头,但不向其发送邮件)

原因:如果一封邮件被发送到列表中,那么它之前就被发送给了那些接收者;在php脚本中,我编辑邮件(删除禁止的单词,添加带有签出链接的页脚等),并希望通过smtp发送邮件(mail()不好,它没有错误处理)

有什么课程或简单的方法可以做到这一点吗?或者可以留在后缀队列中(邮件通过管道传输到php脚本)

我发送的邮件有:mailing.list-address(因为必须显示邮件已发送到邮件列表)和所有其他to,但脚本不应将它们发送到该地址,它只应发送到bcc地址

邮件流是

发送方=>特定-list@server.de => lists@server.de=>php程序=>drop

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

数据库中的邮件=>脚本=>收件人为密件抄送,收件人为列表地址(特定-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.
From:original-sender@original-server.org
致:具体-list@server.de, 
复写的副本:
密件抄送:/真的发到这个地址吗
主题:[Listname | Topicid]主题名称
内容:
--
退订签名等。
我有一个办法可以解决这个问题,但需要帮助

  • 我创建了一个内部邮件地址,转发给我真正的收件人
  • 我把邮件寄到那个地址
  • Postfix必须处理该邮件,而不是作为发送邮件,而是作为新邮件发送到该地址
  • 因为它是一封已收到的邮件,所以postfix不会发送给所有其他收件人,它只发送到指定的地址(即转发地址)

  • 无论何时发送邮件,按照普遍制定的规则,您都需要有收件人。如果你想把邮件寄给你自己或某个地址,那就好了。一旦你有了收件人,你就可以继续创建你的密件抄送了。

    根据普遍确立的规则,无论何时发送邮件,你都需要有收件人。如果你想把邮件寄给你自己或某个地址,那就好了。一旦你有了答案,你就可以继续创建你的密件抄送了。

    好吧,我只是没有把我的问题写对。请参见编辑中的最后一行。我希望在邮件头中包含tos和ccs,但不希望脚本传递到该地址。它只应该交付给bcc(在其他情况下,这将是微不足道的)。原因:我想让邮件只看邮件列表就是你的地址。所以如果你发送到mailing@list.de最重要的还是mailing@list.de但邮件将(通过密件抄送)发送给每一位收件人。我理解你最初的问题。你不能那样做。您必须至少定义了一个To:地址。现在,你可以做的是使用类似于
    foreach
    的东西在列表中迭代,并使用列表中的每个人的电子邮件地址作为特定电子邮件的收件人:标题,为他们排队发送一封单独的电子邮件。当然,邮递员也可以这样做,所以有一种方法可以做到这一点。邮件列表必须在至中。不应显示真实的接收者。它不需要直接通过smtp发送,它可以直接在Postfix中排队,或者Postfix可以配置为不向tos和ccs发送特殊邮件,问题是我们现在如何进入真正的问题。如何将Postfix配置为发送电子邮件,就像它们都是BCCed一样…请看这里:好吧,本来可以,我可以通过php实现,但是谢谢,今晚我将阅读这篇文章。嗯,这是正确的方向。但是邮件是用php构建的。如果设置了一个标志(标题,例如X-SendOnly:Bcc)并发送给bccOk,那么是否有可能忽略to和cc,而我只是没有正确地组织我的问题。请参见编辑中的最后一行。我希望在邮件头中包含tos和ccs,但不希望脚本传递到该地址。它只应该交付给bcc(在其他情况下,这将是微不足道的)。原因:我想让邮件只看邮件列表就是你的地址。所以如果你发送到mailing@list.de最重要的还是mailing@list.de但邮件将(通过密件抄送)发送给每一位收件人。我理解你最初的问题。你不能那样做。您必须至少定义了一个To:地址。现在,你可以做的是使用类似于
    foreach
    的东西在列表中迭代,并使用列表中的每个人的电子邮件地址作为特定电子邮件的收件人:标题,为他们排队发送一封单独的电子邮件。当然,邮递员也可以这样做,所以有一种方法可以做到这一点。邮件列表必须在至中。不应显示真实的接收者。它不需要直接通过smtp发送,它可以直接在Postfix中排队,或者Postfix可以配置为不向tos和ccs发送特殊邮件,问题是我们现在如何进入真正的问题。如何将Postfix配置为发送电子邮件,就像它们都是BCCed一样…请看这里:好吧,本来可以,我可以通过php实现,但是谢谢,今晚我将阅读这篇文章。嗯,这是正确的方向。但是邮件是用php构建的。如果设置了标志(标题,例如X-SendOnly:Bcc)并发送给Bcc,是否可以忽略to和cc