Odoo v12服务器配置自定义外发邮件服务器后无法发送邮件
Odoo v12 邮件发送失败问题排查方案
问题概述
服务器部署的Odoo v12已配置公司外发邮件服务器,连接测试正常,但无法实际发送邮件;本地同配置Odoo可正常发件。失败邮件报错:
Error without exception. Probably due do sending an email without computed recipients
已确认邮件包含收件人信息。
排查与解决步骤
1. 检查邮件队列的收件人解析状态
- 进入
设置->技术->邮件->邮件队列,查看待发送邮件的收件人字段是否为有效邮箱格式(而非内部用户ID或未解析的名称)。Odoo可能因服务器端用户数据同步问题,导致收件人字段存储为内部标识而非实际邮箱。 - 手动编辑队列中的邮件,直接填写目标邮箱(如
xxx@company.com),点击重新发送验证是否成功。
2. 验证服务器端用户/联系人邮箱配置
- 进入
设置->用户与公司->用户,检查发件人、收件人对应的用户记录,确保工作邮箱字段已正确填写且格式有效。本地环境可能已完善用户数据,但服务器端可能存在数据缺失或未同步的情况。 - 若为业务触发的自动邮件(如订单通知、发票提醒),确认关联的客户/联系人记录中邮箱字段无空值或格式错误。
3. 排查邮件模板渲染异常
- 进入
设置->技术->邮件->邮件模板,找到对应发送模板,点击预览功能,检查预览内容中的收件人是否正确显示为邮箱地址。 - 若预览异常,尝试重新保存模板,或切换模板的邮件格式(HTML/纯文本)后重试发送。
4. 启用邮件调试日志定位深层问题
- 修改Odoo配置文件(
odoo.conf),添加调试配置:log_level = debug log_handler = ["odoo.addons.mail:DEBUG"] - 重启Odoo服务,重新触发邮件发送,查看日志文件(通常在
/var/log/odoo/或自定义日志目录),提取邮件发送环节的详细日志,可能会发现隐藏异常(如DNS解析失败、邮件服务器IP限制、端口隐性拦截等,连接测试通过不代表实际发送无限制)。
5. 检查服务器网络与邮件服务器限制
- 联系公司邮件服务器管理员,确认服务器部署IP是否在邮件服务器的发送白名单中,部分邮件系统会限制非信任IP的发送请求。
- 检查服务器防火墙/安全组规则,确保已放行邮件服务器对应端口(如SMTP 587/465),且未限制Odoo进程的出站网络连接。
6. 排查模块兼容性问题
- 服务器端若安装了第三方邮件相关模块,尝试临时禁用非核心邮件模块,重启Odoo后测试发送,排查是否存在模块冲突。
- 确认服务器端Odoo v12已更新至最新稳定版本,部分旧版本存在邮件发送的已知bug。
内容的提问来源于stack exchange,提问作者Ernesto Ruiz
相关产品推荐
相关产品推荐

