2.2 KiB
2.2 KiB
上传错误修复说明
问题
部分用户上传时报错:net::ERR_CONNECTION_RESET(网络连接重置)
原因
Next.js 14 的 App Router 需要在路由文件中显式配置最大请求体大小,否则默认只有 4.5MB 限制。
已修复内容
1. 服务器端配置 ✅
- 在
app/api/materials/upload/route.ts添加了 3GB 请求体限制 - 已设置 3 小时超时时间
2. 前端优化 ✅
- 更详细的错误提示
- 显示具体的失败原因和解决建议
- 增强日志输出便于调试
3. 数据库同步 ✅
- 重新生成 Prisma Client
- 同步数据库 schema
如何应用修复
方式一:自动应用(推荐)
./apply-upload-fix.sh
方式二:手动应用
# 1. 重新生成 Prisma Client
npx prisma generate
# 2. 同步数据库
npx prisma db push
# 3. 重新构建并部署(生产环境)
docker-compose build
docker-compose down
docker-compose up -d
# 4. 查看日志
docker logs -f youyidian-3d-material
测试建议
-
小文件测试(< 10MB)
- 应该快速成功
-
中等文件测试(50-100MB)
- 应该能看到进度条,并成功上传
-
大文件测试(500MB-1GB)
- 可能需要较长时间,但应该能成功
- 建议使用内网地址测试:http://192.168.58.20:4320
用户指导
如果用户还遇到上传失败:
建议 1:检查文件大小
- 预览图:建议 < 10MB,最大 50MB
- 压缩包:建议 < 500MB,最大 3GB
建议 2:使用内网地址(强烈推荐)
如果在公司内网,切换到:http://192.168.58.20:4320
- 速度提升 10-100 倍
- 更稳定,几乎不会失败
建议 3:压缩文件
使用更高压缩率可以显著减小文件大小
建议 4:检查网络
- 使用有线网络
- 确保网络稳定
详细文档
- 修复总结:
UPLOAD_FIX_SUMMARY.md - 故障排查:
UPLOAD_TROUBLESHOOTING.md
监控建议
部署后观察:
- 上传成功率是否提升
- 是否还有
ERR_CONNECTION_RESET错误 - 大文件上传是否正常
如果问题持续,请查看 UPLOAD_TROUBLESHOOTING.md 进行深入诊断。
修复日期: 2025-10-20
当前状态: 已修复,待部署测试