sam_h
1
你好,我在运行 ./discourse-doctor 时遇到错误提示:530 5.7.7 不允许在不使用 SSL/TLS 加密的情况下发送邮件。请参阅:https://yandex.ru/support/mail/mail-clients/ssl.html。
然而,使用相同的配置,我可以通过 swaks 成功发送邮件。
swaks --to me@gmail.com --from mailbox@domain.com --server smtp.yandex.ru --auth LOGIN --auth-user mailbox@domain.com -tls -p 587
我的 app.yml 设置如下:
DISCOURSE_SMTP_ADDRESS: "smtp.yandex.ru"
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: "mailbox@domain.com"
DISCOURSE_SMTP_PASSWORD: "password"
DISCOURSE_SMTP_ENABLE_START_TLS: true # (可选,默认为 true)
我已尝试了论坛中建议的所有解决方案,但问题仍未解决。也许 @Stranik 知道这是怎么回事?
非常感谢大家的建议。
sam_h
2
我尝试了 MailJet,但 ./discourse-doctor 也无法通过。不过,使用 swaks 的测试运行正常。
Stranik
(Evgeny)
3
可能的情况:
电子邮件域名必须已注册(已托管):https://pdd.yandex.ru/
notification email(位于 admin/site_settings/category/required)中的电子邮件地址与 DISCOURSE_SMTP_USER_NAME(app.yml 中的配置)必须一致。
该用户(其电子邮件地址)已在系统中设置,并且该用户在论坛上拥有账户。该用户使用 Yandex 邮箱,且该邮箱由 Yandex 提供托管服务。
我已按此操作,看起来可以正常工作。
在 Yandex 中,您实际上需要创建一个邮件域名,验证对该域名的所有权,并配置所有必要的设置。
说实话,我并没有完全理解其工作原理,这太复杂了。)
sam_h
4
我已经注册了域名并创建了该电子邮件账户,且可以将其用于其他用途。我之前也做过类似操作,因此可以确认域名所有权验证和电子邮件创建均正常运行。
sam_h
5
我昨天尝试了 Sendgrid,但它无法正常工作。再次使用 swaks 测试发送邮件则一切正常。我开始怀疑当前版本是否存在 bug。我使用的是 iscourse 2.6.0.beta2。我遵循了 Docker Hub 页面上的安装脚本:
sudo -s
mkdir /var/discourse
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
我认为可能是 beta 版本导致了问题。如何安装最新的稳定版本?
sam_h
6
我点击“重新发送验证邮件”后查看了日志文件,得到以下信息:Delivered mail a6148e37-bccc-4c05-9987-7fb867a4f369@domain.com。我不确定这是否是问题所在,但我的邮箱地址格式如下:test@domain.com。
@codinghorror 能否请您帮忙查看一下?主要邮件服务(Mailjet、Sendgrid、Yandex)在此构建中均失败了。但使用以下命令时,邮件都能成功发送:swaks --to me@gmail.com --from mailbox@domain.com --server smtp. yandex. ru --auth LOGIN --auth-user mailbox@domain.com -tls -p 587。
您成功解决这个问题了吗?如果成功了,是如何解决的?