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

集成MS Office 365 OAuth2后Redmine邮件内容异常求助

问题分析与解决方案

核心问题定位

你遇到的字符被=替换、HTML标签损坏的情况,本质是邮件MIME编码的换行冲突——Redmine/Helpdesk Pro生成的邮件内容在经过MS365 OAuth2的SMTP服务时,quoted-printable编码的自动换行逻辑出错,导致76字符附近的HTML标签被截断,=被错误插入到标签内部。

可行解决方案

  • 强制8bit编码避免自动换行
    在Redmine的config/configuration.yml中修改邮件配置,明确设置传输编码为8bit,跳过quoted-printable的自动拆分:

    email_delivery:
      delivery_method: :smtp
      smtp_settings:
        # 保留你的MS365 OAuth2相关配置(client_id、client_secret等)
        content_transfer_encoding: "8bit"
        mime_version: "1.0"
    
  • 彻底强制纯文本邮件输出
    界面设置纯文本可能被Helpdesk Pro插件覆盖,需通过代码层面强制:

    1. 在config/additional_environment.rb中添加:
      ActionMailer::Base.default_content_type = "text/plain"
      ActionMailer::Base.default :content_transfer_encoding => "8bit"
      
    2. 替换Helpdesk Pro的HTML邮件模板:找到插件目录下plugins/redmine_helpdesk/app/views/mailer中的.html.erb文件,全部替换为对应的纯文本.text.erb版本,或直接删除HTML模板文件,让系统 fallback 到纯文本。
  • 排查MS365 Exchange的邮件流规则
    登录Exchange Admin Center,检查邮件流 > 规则中是否有自动转换邮件格式的规则(比如强制将纯文本转为HTML),这类规则会干扰Redmine的邮件输出格式,需暂时禁用测试。

  • 隔离插件兼容问题
    暂时禁用Helpdesk Pro插件,测试Redmine原生邮件发送是否正常:

    • 如果原生发送正常,说明是插件与MS365 OAuth2的编码逻辑冲突,需联系RedmineUp提交bug,或自行修改插件的邮件发送代码,移除手动设置的quoted-printable编码逻辑。
    • 如果原生也有问题,需检查Redmine的action_mailer核心配置,确保没有第三方插件修改了邮件编码逻辑。

内容的提问来源于stack exchange,提问作者Michael

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 12:15:27