Eman
(Eman)
1
你好!我一直在尝试搭建 Discourse(仅依靠 Google 搜索,对 Ubuntu 或其他技术几乎一无所知)。页面 已经可以访问,但当我尝试注册管理员账户时,却收不到邮件。
目前为止,我已经完成了以下操作:
- 在 Digital Ocean 上创建了一个 Droplet
- 通过 Droplet 控制台安装了 Discourse
- 创建了 SendGrid API 并配置了反向 DNS
- 验证了发件人身份并完成了域名认证
另外需要说明的是:
- 我使用了 2525 端口,因为看到很多文章说这能解决问题。但在我这里并没有奏效,所以我猜自己可能漏掉了某个简单的步骤。
- 用户名是 “apikey”,所以应该不是那个错误。
尽管做了以上所有尝试,SendGrid 仍然没有发送邮件。我运行了 Discourse-Doctor,结果如下:
我还按照建议,将邮件投递到 mail-tester 地址进行测试,但同样没有成功。
TELNET 测试显示 2525 端口是开放的,API 密钥也有效,但我一直收到 550 错误。我怀疑这与导致 Discourse 邮件无法发送的根本问题是同一个。不过我对此几乎一无所知,所以我的猜测可能完全错误。
Discourse 站点地址是:www.learn.theterrain.io
提前感谢大家!
看起来您尚未正确设置 DNS 记录以验证您对域名的所有权?
Eman
(Eman)
4
不,这肯定已经设置好了,我还特意联系了 SendGrid 支持团队确认过!
我会向他们施压要求更多帮助,因为那个错误是他们的,而不是 Discourse 的。
Eman
(Eman)
6
是的,到目前为止他们的支持几乎没什么用。他们也不知道问题出在哪里。我打算通过邮件跟进,也许这样比在线聊天更有效。
Eman
(Eman)
8
啊,观察真仔细!不过那只是个拼写错误,不幸的是,修正它并不能解决问题,看起来问题出在发件人邮箱上。而且我也不拥有 terrain.io。
Eman
(Eman)
9
问题解决了!把答案贴在这里,方便其他看到这篇帖子的人参考!
cd /var/discourse
./launcher enter app
rails r "SiteSetting.notification_email = '邮箱地址'"
exit
我新建了一个邮箱地址(forum@domain.com)并将其添加到 Sendgrid。现在运行得非常顺利!