Ubuntu部署Rocket.Chat遇413错误:文件无法上传问题求助
Rocket.Chat 413 Request Entity Too Large 问题解决步骤
1. 检查并修改反向代理(以Nginx为例)配置
Ubuntu部署Rocket.Chat通常会用Nginx做反向代理,413错误大多是Nginx限制了请求体大小:
- 打开Rocket.Chat对应的Nginx配置文件(通常位于
/etc/nginx/sites-available/rocketchat或/etc/nginx/nginx.conf) - 在
server块内添加或修改以下配置:client_max_body_size 0; # 0表示无限制,也可设置具体值如100M - 保存配置后重启Nginx:
sudo systemctl restart nginx
2. 确认Rocket.Chat自身的文件大小限制配置
即使后台设置了-1,仍需确保启动环境变量正确:
- 打开Rocket.Chat的systemd服务文件(路径一般为
/etc/systemd/system/rocketchat.service) - 检查
Environment字段中是否包含FILE_UPLOAD_MAX_SIZE=-1,如果没有则添加:Environment="FILE_UPLOAD_MAX_SIZE=-1" - 重新加载服务配置并重启Rocket.Chat:
sudo systemctl daemon-reload sudo systemctl restart rocketchat
3. 排查CDN/云网关的限制
如果你的Rocket.Chat前端配置了Cloudflare、阿里云CDN等服务,这些平台默认会有文件上传大小限制:
- 登录CDN控制台,找到对应域名的上传限制设置,调整为符合需求的大小或设为无限制
4. 定位问题根源(可选)
通过curl直接请求Rocket.Chat端口,绕过反向代理验证问题所在:
curl -X POST -F "file=@your-large-file" http://localhost:3000/api/v1/upload
- 如果请求成功,说明问题出在反向代理或CDN层
- 如果仍失败,需检查Rocket.Chat的日志(路径通常为
/var/log/rocketchat/),排查是否有其他配置冲突
内容的提问来源于stack exchange,提问作者Mitsuru Miyata
相关产品推荐
相关产品推荐

