
Pas d’autorisation a se deconnecter
快速结论:该报错出现在 n8n 自托管企业版的 Editor UI 中,用户无法正常登出,且伴随 401 Unauthorized / 500 Internal Server Error 等前端错误。由于 Issue 因模板填写不完整被关闭,官方未给出明确修复方案。优先排查反向代理(如 Nginx)对 SSE (/rest/push) 请求的转发及超时设置。
问题场景
用户在 n8n 自托管企业版(Docker 部署)的 Editor UI 中遇到问题,非特定工作流触发。用户无法正常登出,编辑器行为异常,并出现前端错误。错误发生在用户登录后、工作流执行之前。
报错原文
GET /rest/push?pushRef=...
500 Internal Server Error
401 Unauthorized
Cannot read properties of undefined
原因分析
由于 Issue 被关闭且未提供明确结论,以下是可能原因:
- SSE (Server-Sent Events) 推送通道异常:
/rest/push负责 n8n 编辑器的实时连接,若反向代理(如 Nginx)未正确配置事件流转发或超时过短,会导致 500 错误。 - 会话认证机制问题: 用户无法登出且
401 Unauthorized频繁出现,可能涉及认证 cookie 或 token 的校验失败,或后端 session 存储(Postgres)同步异常。 - n8n 版本兼容性: Issue 中使用的
n8nVersion: 2.22.5与nodeJsVersion: 24.15.0组合可能存在已知兼容性风险。
环境排查
- n8n 版本: 2.22.5
- 部署平台: Docker(自托管)
- Node.js 版本: 24.15.0
- 数据库: PostgreSQL
- license: Enterprise(生产环境)
- 反向代理: 用户已排查 Nginx 配置,但未提供具体配置片段
- 浏览器: Chrome 149.x(用户代理显示)
解决步骤
- 完善 Issue 信息(官方要求): 由于 Issue 因模板填写不完整(incomplete-template)被关闭,请按 n8n Issue 模板补充完整信息(尤其是 Workflow/setup 细节)后重新打开,以便官方或社区进一步排查。
- 调整反向代理 SSE 配置(可优先尝试): 如果使用了 Nginx 作为反向代理,确保
/rest/push路径的代理设置正确处理 Event-Stream 响应:- 添加
proxy_set_header Connection ''; - 添加
proxy_http_version 1.1; - 添加
proxy_buffering off; - 添加
proxy_cache off; - 设置合理的
proxy_read_timeout(如 86400s)
- 添加
- 检查认证配置: 确认 n8n 环境变量中
N8N_AUTH_COOKIE_SECURE、N8N_AUTH_COOKIE_SAMESITE设置是否与浏览器/反向代理协议一致(尤其 HTTPS 场景下需启用 Secure 标记)。 - 升级 n8n 版本: 尝试升级到 2.22.5 之后的最新稳定版,或降级到已知稳定的长期支持版本(如 1.x 系列),验证是否为已知 bug。
- 更换 Push 后端: 用户已尝试不同推送后端配置,但仍可确认
N8N_PUSH_BACKEND环境变量是否明确设置为sse(默认)或websocket,确保不会因配置冲突导致异常。 - 检查 Docker 容器网络及日志:
- 使用
docker logs <container_name>查看 n8n 容器运行日志,筛选/rest/push相关 500 错误堆栈。 - 确认容器与 PostgreSQL 数据库之间的网络连接稳定。
- 使用
- 清理持久化存储(风险操作): 作为最后手段,可尝试清除 n8n 数据库中的过期 session 表(需要导入对应 PG 数据表操作),但务必在备份后执行。
验证方法
执行上述步骤后,重新登录 n8n Editor UI,观察 Network 面板中 /rest/push?pushRef=... 请求是否返回 200 OK,且状态列不再显示 text/event-stream 挂起或 500 错误。同时验证用户能否正常登出,且不再出现 401 Unauthorized 或 Cannot read properties of undefined 报错。
参考来源
n8n-io/n8n #33125 – Pas d’autorisation a se deconnecter(已关闭,incomplete-template)。



