123-reg 和 discourse 在托管的虚拟专用服务器上无法正常工作 - 所有其他方面似乎都正常

您好

我是第一次作为管理员使用 Discourse。我正在尝试设置电子邮件,但无论我怎么尝试都会失败。

我正在编辑 app.yml 然后运行 ./launcher rebuild app

我使用的是这些设置:-

discourse_smtp_address: "smtp.gmail.com"
discourse_smtp_port:587
discourse_smtp_domain: mydomainname.com
discourse_smtp_user_name = 'myemailaddress@gmail.com'
discourse_smtp_password = 'mypassword'
discourse_smtp_enable_start_tls = true
discourse_smtp_authentication = login

或者

DISCOURSE_SMTP_ADDRESS: smtp.123-reg.co.uk
DISCOURSE_SMTP_PORT: 465
DISCOURSE_SMTP_USER_NAME: myemail@mydomainname.co.uk
DISCOURSE_SMTP_AUTHENTICATION: YES
DISCOURSE_SMTP_PASSWORD: mypassword
DISCOURSE_SMTP_ENABLE_START_TLS: Yes

以上(以及许多)其他变体都无法正常工作。

我运行 ./discourse-doctor

我得到的是:

net::readtimeout

或者

关于 _c 未知命令的某条信息

我能否请问是否有人能让我保持理智并告诉我我哪里做错了。

我可以从主机 telnet 到 smtp 服务器。

提前感谢。

并且成功发送了电子邮件?

老实说,我还没到那一步

我现在正在使用

DISCOURSE_SMTP_ADDRESS: smtp.123-reg.co.uk
DISCOURSE_SMTP_PORT: 465
DISCOURSE_SMTP_USER_NAME: myemail@mydomain.co.uk
DISCOURSE_SMTP_AUTHENTICATION: YES
DISCOURSE_SMTP_PASSWORD: myPasswordwithCharacter#
DISCOURSE_SMTP_ENABLE_START_TLS: YES

我遇到了
Net::SMTPAuthenticationError

我可以用相同的密码登录 Webmail。

是的,telnet smtp 在端口 25 上可以工作。使用 123-reg。

已重建应用

现在在 ./doctor-discourse 中有此内容

测试使用 smtp.123-reg.co.uk:465,用户名:myemail@mydomain.co.uk,并启用身份验证将邮件发送到 myemail@mydomain.co.uk
======================================== 错误 ========================================

                                意外错误

undefined method to_sym' for true:TrueClass 您是指 to_s` 吗?

这听起来可能是一个bug,尽管邮件发送代码中出现bug似乎不太可能。

请查看新 Discourse 安装的邮件故障排除以获取其他尝试方法。(例如,如何在不运行 discourse-doctor 的情况下进行测试)。

啊。在这里。“YES”不是 smtp_validation 的有效值:

必须是 plain, login, 或 cram_md5.

它位于 app/services/email_settings_validator.rb 中,如果您想在 github 上找到它。

2 个赞