Redmine通过Gmail IMAP接收邮件但无法创建工单求助
排查Redmine 2.3.0邮件创建工单失败的问题
我之前也碰到过Redmine老版本收邮件不生成工单的情况,结合你的Bitnami堆栈环境和描述(邮件已被读取但无工单),给你梳理几个关键排查方向:
1. 先看生产日志找具体错误
这是最直接的定位方式,Bitnami Redmine的生产日志路径一般是 /opt/bitnami/apps/redmine/log/production.log。你可以实时监控日志:
tail -f /opt/bitnami/apps/redmine/log/production.log
然后重新运行你的rake命令,看日志里有没有报错——比如必填字段缺失、用户权限不足、邮件格式解析失败,老版本Redmine经常会因为这些原因静默失败,不会在命令行输出错误。
2. 补全并检查rake命令参数
你给出的命令最后是allow...,Redmine 2.3.0的receive_imap命令如果要支持邮件内的属性覆盖,需要明确allow_override参数;另外用Gmail的话,现在必须用应用专用密码(普通密码会被Google拦截,因为低安全性应用访问已关闭)。完整的命令示例:
rake redmine:email:receive_imap RAILS_ENV="production" \ host=imap.gmail.com ssl=1 port=993 \ username=your_email@gmail.com password=your_app_password \ move_on_success=success move_on_failure=failed \ unknown_user=accept project=mail \ allow_override=project,tracker,priority
另外可以先加dry_run=1参数做模拟测试,这个参数会输出Redmine解析邮件后的操作,但不会实际创建工单或移动邮件,能帮你确认邮件是否被正确识别:
rake redmine:email:receive_imap RAILS_ENV="production" \ host=imap.gmail.com ssl=1 port=993 \ username=your_email@gmail.com password=your_app_password \ unknown_user=accept project=mail \ dry_run=1
3. 检查邮件格式是否符合要求
Redmine 2.3.0对邮件格式的兼容性不如新版本:
- 尽量发送纯文本邮件,避免复杂的HTML格式(有些HTML标签会导致解析失败)
- 如果要在邮件里指定工单属性(比如跟踪器、优先级),要用固定格式,比如在正文开头加:
Tracker: Bug
Priority: High - 主题不要包含特殊字符或全角符号,老版本对非ASCII字符的支持可能有问题
4. 验证项目和权限设置
- 确认
project=mail里的mail是项目的标识符(不是显示名称),你可以在Redmine的项目设置页面查看标识符 - 因为你用了
unknown_user=accept,要确保自动创建的新用户(或匿名用户)有创建工单的权限——在Redmine的角色权限设置里,给对应的角色添加“创建问题”权限 - 确认
mail项目是激活状态,没有被归档
5. 检查Bitnami堆栈的权限
Bitnami的Redmine运行用户是bitnami,有时候日志目录或临时目录权限不足会导致功能异常,你可以修复权限:
sudo chown -R bitnami:bitnami /opt/bitnami/apps/redmine/log sudo chmod -R 755 /opt/bitnami/apps/redmine/log
内容的提问来源于stack exchange,提问作者aravinth_2442
相关产品推荐
相关产品推荐

