Sendgrid SMTP 问题 - 显示成功,但邮件未送达

你好,我已在 EC2 实例上安装了 Discourse。我按照文档推荐的方式,使用 SendGrid 作为 SMTP 服务,通过 API 密钥认证方式连接到端口 587。

之前我无法连接,后来在 app.yml 中指定了端口。根据 discourse-doctor 的检测结果,邮件可以发送,并且我通过 SSH 登录到实例后也能通过该端口成功 telnet。然而,实际上并没有邮件发出,也没有收到任何邮件,即使使用 mail-tester 提供的测试邮箱也是如此。

当我检查日志(尝试通过实际网站发送邮件时),我看到如下信息:
Delivered mail 1ed931d5-3181-46a1-86f0-1b18b6366020@forum.redactedthisisactuallymydomain.com ( 628.3ms)

但 SendGrid 的日志中似乎没有任何请求记录。

我的 EC2 实例的出站端口已完全开放。

不太确定我遗漏了什么。我也尝试过使用端口 2525,但同样没有成功。

有人有任何建议吗?

我最终直接迁移到了 Mailgun,一切运行完美。我猜当时只是域名注册出了点问题,但说实话,目前仍不太确定。

昨天我也演示了一个使用 SendGrid 作为 SMTP 的新版本,但看起来邮件并未发送!
所以看来问题并不只在你这边。:roll_eyes:

嗯,也许是 SendGrid 那边出了问题。我在他们的日志里没找到什么线索,而且他们的日志本身也有点让人困惑,所以谁说得准呢。对我来说幸运的是,我们当时还没配置任何 SMTP,所以切换起来很容易。这可能也和一些域名注册相关的问题有关,因为我现在回想起来,当时在设置时确实遇到了一些奇怪的错误(点击验证,一个显示成功,另一个显示失败;稍后再次点击验证,状态就切换了)。所以,如果其他人也遇到这种情况,请务必确认你们的 DNS 设置在他们那里能正常工作。