1

我正在启动一项使用 Laravel Cron、AWS WorkMail 和 AWS SES 发送自动电子邮件的服务。我有大约 10 个用户,(几乎)每个人都可以。

一位用户说他收不到任何电子邮件。

这是 AWS SES 给出的错误消息:

https://i.stack.imgur.com/ahrAj.jpg

这是我的 Route53 配置:

https://i.stack.imgur.com/KKHWv.png

其他用户收到是正常的。

我正在研究它数周但无法解决它:(

Laravel 代码:

<?php
use Illuminate\Support\Facades\Mail;

// Some code

Mail::send([], [], function($m) {
    $m->from(env("MAIL_FROM"), $this->email_reply["name"]);
    $m->to($this->email_to["email"], $this->email_to["name"])->subject($this->title);
    $m->setBody($this->parseFastText(!!"email"), "text/html");
});

项目上的 SES 配置是正确的,只有一位用户无法接收电子邮件。

这是一封带有自定义域 (foobar.com.br) 的电子邮件,如果它是 AWS SES 和自定义域之间的问题,则为 idk。

我认为它可能是客户端电子邮件服务器中的过滤器,但不确定。

我也曾在 AWS Workmail 之前尝试过使用 Zoho Mail,但出现了同样的错误。

邮件测试器:https ://www.mail-tester.com/test-ralvhoi3f


解决了:

<?php
use Illuminate\Support\Facades\Mail;

// Some code

Mail::send([], [], function($m) {
    $body = $this->parseFastText(!!"email");
    $m->from(env("MAIL_FROM"), $this->email_reply["name"]);
    $m->to($this->email_to["email"], $this->email_to["name"])->subject($this->title);
    // --- ADD
    $m->addPart(filter_var($body, FILTER_SANITIZE_STRING), "text/plain");
    // ---
    $m->setBody($body, "text/html");

});
4

0 回答 0