【问题标题】:Using PHPMailer Results in many blocked emails使用 PHPMailer 导致许多被阻止的电子邮件
【发布时间】:2013-08-23 04:30:06
【问题描述】:

我正在使用 PHPmailer;虽然可能是 2012 年的版本 - 我已经有一段时间没有更新了。

我正在发送这样的邮件:

        $mail = new PHPMailer();
        $mail -> IsSMTP();
        $mail -> Host = "localhost";
        $mail -> Port = 587;
        $mail -> SMTPAuth = true;
        $mail -> Username = EMAIL_USER;
        $mail -> Password = EMAIL_PASS;
        $mail -> From = EMAIL_USER;
        $mail -> FromName = "My Company";
        $mail -> AddAddress($email);  
        $mail -> AddReplyTo('<Same as "FROM">', 'User Name');
        $mail -> IsHTML(true);
        $mail -> Subject = 'This is my subject';
        $mail -> Body = $body;
        $result = $mail -> Send();

我有很多使用上述代码退回的电子邮件。我什至删除了 body 变量,只是在其中硬编码了“测试”——所以我认为我的身体不是原因。

我想知道是否还有其他我没有使用的标头会有所帮助,或者 PHPMailer 是否会在幕后处理这个问题?

编辑:我真的在问我是否遗漏了任何重要的标题信息?

【问题讨论】:

  • 邮件退信的原因有很多,退信的内容是什么?
  • @Dagon 在雅虎,它最终进入垃圾邮件文件夹。对于另一个小型 ISP,除了“这是一个永久性错误......与 Internet 社区可能认为是垃圾邮件的配置文件相匹配”之外,它没有提供太多信息。我知道这是主观的事情,但我确实觉得很多人会将其视为垃圾邮件而不仅仅是一对夫妇。由于 2/4 的测试已经表明了这一点。
  • 以垃圾邮件文件夹结尾不是退回邮件。
  • x-mailer 是否设置为 PHP?如果是,那可能是原因,也许不是。只是一个想法!
  • @Dagon 没错,但第二种情况是。

标签: php html-email phpmailer spam


【解决方案1】:

好吧,我解决了这个问题;上面的代码不是问题,效果很好。

在我的主题中,我使用了一个关于“验证您的帐户信息”的短语,这让一些 ISP 屏蔽了它。

所以教训是,你的主题很重要。在我意识到这一点之前,我正在查看我的 php 代码和我的正文内容。

【讨论】:

  • 很高兴您发现了这一点。以后我会记住的!
【解决方案2】:

在处理被拒绝的邮件时还需要注意一些其他事项:

  • 您发送邮件的服务器 很重要。许多,如 AWS,默认情况下被列入黑名单,您需要申请特殊权限才能发送邮件。如果您不确定,请使用blacklist-check
  • 总是总是为您的域(在 DNS 中)创建一个适当的 SPF txt record。这可确保发送服务器是您域的已验证发件人。
  • 如果您在发送邮件时遇到问题,请检查服务器日志以了解原因。许多提供商(例如 Outlook.com)会以 RFC 编号甚至链接的形式提供良好的反馈,以获取更多信息。
  • 如果其他方法都失败了,请使用邮件网关 API,例如 SendGridMandrillAmazon SNS

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-21
    • 2014-04-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多