我在 Yunohost 上自托管 Discourse 论坛时,遇到了 SMTP 电子邮件配置问题。在仔细查阅了 meta.discourse 文档后,我没有找到关于 Yunohost 特定操作或保存位置的信息。我卸载并重新安装了 Discourse,复制了日志文件,最终找到了包含 SMTP 信息的配置文件。
如果您也使用 Yunohost 并需要配置 Discourse 的 SMTP 设置,您可以在以下位置找到要修改的文件:
/var/www/discourse/config/discourse.conf
打开该文件,配置 SMTP 设置,保存并退出,然后使用命令“systemctl restart discourse”重新启动 Discourse。
root@yuno:~# nano /var/www/discourse/config/discourse.conf
root@yuno:~# systemctl restart discourse
如果这对其他人有帮助,因为我也找不到信息——
要使用 Office365 配置 Discourse,您需要执行以下操作:
- 转到您的 Microsoft 365 管理中心
- 点击“设置”,然后点击“域”
- 点击“添加域”
- 按照屏幕上的说明添加您论坛的 URL
- 完成上述步骤并验证 DNS 后,您就可以使用该子域创建一个收件箱了
- 点击“用户”,然后点击“活动用户”
- 点击“添加用户”
- 为您的论坛创建邮箱(例如:noreply@forum.yourlinks.com)邮箱域名必须与论坛运行的主机名匹配
- 点击“许可证和应用”
- 为此邮箱分配一个 Exchange Online (Plan 1) 许可证(每天 10,000 条消息,每分钟 30 条消息的限制)邮箱必须附加许可证才能用于 直接发送。撰写本文时,成本为每月 4.00 美元/月或 5.10 加元/月 | 如果您需要更高的限制或更短的节流,还有其他计划可用
- 点击“邮件”,然后点击“管理电子邮件应用”
- 启用“已验证的 SMTP”
- 点击“保存更改”
- 转到您的 Azure 门户
- 浏览到您的活动目录
- 在左侧边栏中选择“属性”,就在“用户设置”下方
- 选择“管理安全默认值”
- 将“安全默认值”设置为“已禁用”
- 点击“保存”
- 返回“用户”>“活动用户”
- 点击“多重身份验证”
- 禁用正在使用的邮箱上的 MFA
现在,就 Office365/Microsoft365 而言,您新创建的邮箱已准备好代表您的 Discourse 实例进行直接发送。
使用 Office365 邮箱的设置:
修改 /var/www/discourse/config/discourse.conf 中的这些行
# 运行论坛的主机名
hostname = "forum.yourlinks.com"
# 备份主机名,主要用于 CDN 使用
backup_hostname =
# 用于发送电子邮件的 SMTP 服务器地址
smtp_address = smtp.office365.com
# 用于发送电子邮件的 SMTP 服务器端口
smtp_port = 587
# 传递给 SMTP 服务器的域名
smtp_domain = forum.yourlinks.com
# SMTP 服务器的用户名
smtp_user_name = noreply@forum.yourlinks.com
# SMTP 服务器的密码
smtp_password = YourLinksPassWordHere
# SMTP 身份验证机制
smtp_authentication = login
# 为 SMTP 连接启用 TLS 加密
smtp_enable_start_tls = true
# 用于验证 SMTP 服务器证书的模式
# 要禁用,请设置为 'none'
smtp_openssl_verify_mode =
# 根据 RFC 8314 3.3 强制使用隐式 TLS
smtp_force_tls = false
# 在生产环境中加载 MiniProfiler,供开发人员使用
load_mini_profiler = false
# 运行论坛的主机名
hostname = "forum.yourlinks.com"