电子邮件服务器设置可以做成随时可以修改的配置吗?

AI 生成的摘要

singi2016cn 提出了一个紧急场景:邮件服务商突然禁用账号,但 Discourse 的 SMTP 配置目前固定在 app.yaml 文件中。修改配置需要重新构建应用,这会导致几分钟的停机时间,在白天业务高峰期是不可接受的,且期间积压的失败邮件通知令人焦虑。用户询问是否可以将邮件服务器设置改为可随时在线修改的配置。

itsbhanusharma 建议,如果在 yml 文件中注释掉或移除环境变量(如 DISCOURSE_SMTP_ADDRESS 等),这些设置通常会暴露在管理后台 UI 中,从而允许在线修改。

然而,singi2016cn 尝试了该方法并附上了截图,反馈说即使注释掉相关配置,管理后台的设置页面中仍然没有出现可供填写的 SMTP 字段,导致无法通过界面进行配置。

针对这一情况,itsbhanusharma 建议用户在设置菜单的搜索框中搜索 “SMTP”,指出相关选项可能位于其他菜单页面,或者由于版本更新,界面布局可能发生了变化。

我最近遇到了一个情况,邮件服务账号突然被服务商禁用了,导致我必须替换成别的邮件服务商,现在无法即时修改邮件服务器配置,必须修改 app.yaml 的配置,再构建才能生效,这会导致网站会停机几分钟,这在白天是不可接受的。但是,白天这段时间发送失败的邮件又在不断增加,这搞得我心情烦躁。

如果我没记错的话,如果你没有从 yml 文件中添加(或事后删除)环境变量,这些设置就会在管理界面中暴露出来。

我尝试了,但是不行。

  #DISCOURSE_SMTP_ADDRESS: smtp.mailgun.org
  #DISCOURSE_SMTP_USER_NAME: forums@xxx.com
  #DISCOURSE_SMTP_PASSWORD: xxx
  #DISCOURSE_SMTP_PORT: 587
  #DISCOURSE_NOTIFICATION_EMAIL: noreply@xxx.com
  #DISCOURSE_SMTP_DOMAIN: forums.xxx.com

注释掉上面的配置后,管理后台如下显示:


没有看到可以自动填写的地方。

您可以尝试在设置菜单中的搜索框中搜索“SMTP”,也许相关选项位于其他菜单页面,或者可能有了一些变化。