【发布时间】:2015-10-10 06:04:35
【问题描述】:
不确定这是否属于这里,因为我是通过 PHP 生成电子邮件的人。
基本上,使用下面的代码,当密件抄送中的任何人查看电子邮件时(至少在我检查的 gmail 中),密件抄送收件人都可以看到彼此,见截图。
你们中有人见过这种行为吗?我在同一托管公司的不同服务器上运行了相同的代码,它按预期工作。不知道是不是因为在服务器上我遇到了问题,它设置了一个外部邮件服务器。我也尝试过使用 PHPMailer 并遇到了同样的问题。
我已经在图片中留下了“邮寄者”部分,以防可以从中找到什么。
这是我用来发送电子邮件的代码。
$subject = "BCC Not Working as Expected...";
$body = "BCC Not Working as Expected...";
$headers = [];
$headers[] = "MIME-Version: 1.0";
$headers[] = "Content-type: text/html; charset=iso-8859-1";
$headers[] = "From: Example <info@example.com>";
$headers[] = "To: Some Person <someperson@example.com>";
$headers[] = "Bcc: John <johnwales.jw@gmail.com>, Paul <paul@example.com>, Ringo <ringo@example.com>, George <george@example.com>";
mail(null, $subject, $body, implode("\r\n", $headers));
echo implode("\r\n", $headers);
// Output:
// MIME-Version: 1.0 Content-type: text/html; charset=iso-8859-1 From: Example To: Some Person Bcc: John , Paul , Ringo , George
【问题讨论】:
-
嗯,这应该像你所做的那样工作。您正在检查哪些用户的 Gmail 帐户?您之前可能已经看过这个建议,但现在强烈建议您使用 PHPMailer 之类的东西,而不是使用
mail()手动构建消息。纠正错误并在出错时进行调试要容易得多。 -
密件抄送中的电子邮件是 gmail、google 应用程序和交换帐户。所有人都能看到对方。是的,我在使用 PHPMailer 时首先注意到,我切换到邮件功能尝试修复。你以前见过这样的事情吗?我已将其范围缩小到由托管公司在一台服务器上发生,我们在此特定 IP 上托管多个站点,并且在我们升级到新计划后我注意到了这一点。如果我通过他们的其他服务器之一使用该脚本,它会按预期工作,但他们认为这是我的问题。我应该指出,我一直对他们有最好的体验,这不是他们的目标。
-
嗯,这真的很可疑,它只发生在一台服务器上。当您只是从客户发送一封常规电子邮件以完全排除您的软件时,您能否验证密件抄送行为是否正确?
-
我想我可以排除软件。我们在这个特定 IP 上托管了大约 5 个网站。其中 4 个使用外部邮件服务器,一个仅使用服务器本身的 webmail。我试过从有外部邮件服务器的和没有外部邮件服务器的发送电子邮件,同样的密件抄送问题。只有当我尝试我的个人网站(恰好在同一家托管公司,但在不同的 IP 上)时,我才能获得正常的密件抄送行为。也许我应该在他们的票务系统上链接到这篇文章,看看他们是否更感兴趣。您认为 mx、spf 或电子邮件身份验证的任何组合都会有所帮助吗?
-
该服务器上的 MTA 可能有一些奇怪的配置。