【问题标题】:Sending SMTP emails reliably from Wordpress从 Wordpress 可靠地发送 SMTP 电子邮件
【发布时间】:2017-06-08 13:52:03
【问题描述】:

我有一个托管在 Cloudways 的 Wordpress 网站。我已经安装了他们的弹性电子邮件 SMTP 插件。理论上我只需要激活插件,然后服务器会负责STMP中继和身份验证。这意味着我不需要 Wordpress 的 SMTP 插件。

我添加了v=spf1 a mx include:_spf.elasticemail.com ~all 的 SPF 值 根据 Elastic 电子邮件自己的指南,我的 DNS 设置中的 DKIM 值为 k=rsa;t=s;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCbmGbQMzYeMvxwtNQoXN0waGYaciuKx8mtMh5czguT4EZlJXuCt6V+l56mmt3t68FEX5JJ0q4ijG71BGoFRkl87uJi7LrQt1ZZmZCvrEII0YO4mp8sDLXC8g1aUAoi8TJgxq2MJqCaMyj5kAm3Fdy2tzftPCV/lbdiJqmBnWKjtwIDAQAB

如果通过我服务器上的一个小的 PHP 脚本发送一些测试电子邮件:

$to = "web-XXXXXX@mail-tester.com";
$subject = "Testing";
$txt = "Hello world!";

mail($to,$subject,$txt,'From: noreply@mydomain.se ','-f noreply@mydomain.se ');

我在 www.mail-tester.com 获得了优异的分数,并且电子邮件也顺利到达了我的两个不同收件箱。

但是当我尝试从 wordpress 发送电子邮件时,通过插件“检查电子邮件”,我在 www.mail-tester.com 上得到了糟糕的分数......它说我没有完全通过身份验证,我得到 -3 减分特别是对于这一行:We didn't find a mail server (MX Record) behind your domain name xxxxxx.cloudwaysapps.com.

与简单的 php 测试脚本相比,通过 Wordpress 发送测试电子邮件时,我为什么会得到如此糟糕的分数,我应该怎么做才能在从 Wordpress 发出的邮件中获得可靠的分数?

【问题讨论】:

    标签: wordpress email spf


    【解决方案1】:

    对于 WordPress,实际问题是您在第二条评论中发现的问题。

    如果您在 WordPress 网站上使用“WP Mail SMTP”插件,还有另一种解决方法。它会使用您的自定义设置覆盖默认的 WordPress 电子邮件行为。

    Cloudways 编写了关于设置SMTP on WordPress 的完整指南。在他们的示例中,他们使用了 Gmail SMTP,但 Elastic Email 的步骤相同。

    【讨论】:

      【解决方案2】:

      问题是 Wordpress 具有将 Return-Path 设置为服务器地址的默认行为,在我的例子中:xxxxxx.cloudwaysapps.com 而不是 xxxx@mydomain.com。解决方案以及使电子邮件更有可能到达收件箱的原因是使用 tiny plugin 修改 Wordpress 的默认行为。它将外发电子邮件的 Return-Path 标头设置为与发件人电子邮件地址相同。

      【讨论】:

        【解决方案3】:

        您也可以在functions.php 主题文件中快速编写代码。例如:

        function my_phpmailer_example( $phpmailer ) {
            $phpmailer->ReturnPath='bounce_here@domain.com';
            $phpmailer->Sender='noreply@mydomain.com';
            $phpmailer->SetFrom('noreply@mydomain.com', 'My Name', FALSE);
        }
        add_action( 'phpmailer_init', 'my_phpmailer_example' );
        

        根据我的经验,明确设置所有这三个条目将真正有助于解决 dkim 和 spf 验证问题。

        【讨论】:

          猜你喜欢
          • 2013-04-14
          • 1970-01-01
          • 1970-01-01
          • 2011-07-30
          • 2014-01-10
          • 2012-06-23
          • 2017-02-11
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多