You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Redmine 4.1.1配置ActionMailer from项无效致SMTP报错

解决Redmine 4.1.1中ActionMailer from选项不生效的SMTP问题

我之前配置Redmine邮件服务时也踩过一模一样的坑,结合你说的「Python测试凭证正常但Redmine报550权限错误」的情况,给你几个针对性的排查和解决方向:

1. 先检查Redmine后台设置是否覆盖了配置文件

这是最容易忽略的点——Redmine管理员后台的邮件设置优先级高于configuration.yml:

  • 登录Redmine管理员账号,进入「管理」→「设置」→「邮件通知」
  • 查看「发件人地址」字段,如果这里填的是SMTP认证用户名(和你想设置的email@company.com不一致),就会直接覆盖yml里的配置
  • 要么把这里改成email@company.com,要么勾选「使用默认设置」(部分版本有这个选项),让配置文件的设置生效

2. 确认configuration.yml的YAML格式完全正确

YAML对缩进和格式要求极其严格,哪怕多一个少一个空格都可能导致配置不加载:

  • 必须用空格缩进(绝对不能用Tab键),比如default_options的缩进要和delivery_method保持一致(比如都是2个或4个空格)
  • 你贴的配置结构没问题,但可以核对下完整格式(注意端口要改成实际值,比如587或465):
production:
  email_delivery:
    default_options:
      from: 'email@company.com'
    delivery_method: :smtp
    smtp_settings:
      address: '你的SMTP服务器地址'
      enable_starttls_auto: true
      port: 587
      authentication: :login
      user_name: '你的SMTP认证用户名'
      password: '你的SMTP密码'
      openssl_verify_mode: 'none'

3. 用初始化脚本强制锁定发件人配置

如果配置文件还是不生效,可以通过初始化脚本强制覆盖ActionMailer的默认设置:

  • 进入Redmine根目录的config/initializers文件夹,新建一个mailer_custom.rb文件
  • 写入以下代码:
Rails.application.config.action_mailer.default_options = {
  from: 'email@company.com'
}
  • 重启Redmine服务(比如执行service redmine restart,或者根据你的部署方式用Passenger/Nginx的重启命令)

4. 通过Rails控制台验证配置是否加载成功

可以直接用Redmine的控制台查看当前的邮件配置,确认是否生效:

  • 登录服务器,进入Redmine根目录,执行:
RAILS_ENV=production rails console
  • 在控制台输入命令查看当前发件人配置:
puts ActionMailer::Base.default_options[:from]
  • 如果输出不是email@company.com,说明配置没加载成功,回头检查格式或后台设置;如果输出正确,再测试邮件发送

5. 最后再确认SMTP服务器的权限细节

虽然你用Python测试成功了,但可以再核对两点:

  • 确保Python测试时用的发件人地址和Redmine里设置的email@company.com完全一致
  • 有些SMTP服务器需要把发件邮箱添加到认证用户的「允许代发列表」里,虽然Python测试通过,但可以再和运维确认下这个配置

内容的提问来源于stack exchange,提问作者May.D

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 20:47:36