dootask/resources/ai-kb/zh/faq/common-faq/upload-size-limit.md

2.1 KiB
Raw Permalink Blame History

id, title, type, feature, scope, locale, aliases, related_tools, related_pages, prerequisites, negative, last_verified
id title type feature scope locale aliases related_tools related_pages prerequisites negative last_verified
common-faq.upload-size-limit.faq 文件超大上传失败 faq common-faq end-user zh
文件太大
文件超过限制
上传失败 413
文件大小超限
大文件传不上
超出文件大小限制
file_upload
dialog_send_file
单个上传请求受 PHP / Nginx 双层限制,前端的「最大尺寸」提示只是友好封装
没有「拆包重传」按钮,超大文件需要事先分块或直接上传到外部存储
同一文件多次重传不会绕过大小限制
v1.7.90

文件超大上传失败

问题

拖文件或选文件后立即报「超出文件大小限制」「文件过大」「413 Request Entity Too Large」或上传到 99% 突然失败。

原因

DooTask 文件上传受三层限制:

  • PHPupload_max_filesize 默认 1024M容器内 docker/php/php.ini
  • Nginxclient_max_body_size(一般和 PHP 对齐)
  • 场景层:聊天图片、头像、富文本图片各自有更小的尺寸上限(如头像通常 2M富文本图片 10M

任何一层超出都会拒收。出错信息以最先拒绝的那层为准——浏览器层先校验则提示「超出文件大小限制」;后端先校验则提示 413。

解决

  1. 直接拖文件到「文件中心」走文件上传流程,限制最大(默认 1024M
  2. 大于上限时拆分:用 zip 分卷、或上传到云盘后分享外链
  3. 聊天里发大文件不要走「图片」入口(小限),用「发送文件」按钮(大限)
  4. 管理员可调高限制:改 docker/php/php.iniupload_max_filesizepost_max_size,同时改 nginx 的 client_max_body_size,重启容器生效

不支持

  • 客户端不会自动分片重传超过 post_max_size 的文件
  • 主程序未内置 chunked upload / 断点续传 API除部分插件场景
  • 修改 php.ini 后必须容器重启,热加载不生效

file.upload.howto / system-setting.file.howto 给管理员看