主要服务的上传上限一览
整理了各类 Web 服务与云存储的文件上传上限,可作为开发时校验设计与边界值测试的参考。
邮件与消息服务
邮件与聊天服务对附件大小设有限制。Gmail 与 Outlook 通常为 25MB,但 Base64 编码会带来额外开销,实际可发送的文件会略小一些。
| 服务 | 上限大小 | 备注 | 测试文件 |
|---|---|---|---|
| Gmail | 25MB | 超过 25MB 会自动转换为 Google Drive 链接 | 24.9MB / 25MB / 25.1MB |
| Outlook | 25MB | Microsoft 365 最高 150MB(由管理员设定) | 24.9MB / 25MB / 25.1MB |
| LINE | 50MB | 视频最长 5 分钟,图片在发送时会被压缩 | 50MB |
| Discord(免费) | 25MB | 开通 Nitro 后最高 500MB | 24.9MB / 25MB / 25.1MB |
| Discord Nitro | 500MB | Nitro Basic 为 50MB | - |
| Slack | 1GB | 所有套餐均可上传至 1GB | - |
社交与媒体平台
社交平台对图片和视频的上传格式与大小均有限制。图片通常会被自动缩放和重新压缩,原始文件大小往往无法保留。
| 服务 | 上限大小 | 备注 |
|---|---|---|
| Twitter / X(图片) | 5MB(PNG/JPG) | GIF 为 15MB,视频经浏览器上传为 512MB |
| 8MB(图片) | 视频 4GB,Reels 4GB | |
| 10MB(图片) | 视频为 10GB |
CMS 与 Web 应用
在 WordPress 等 CMS 中,默认上传上限由 PHP 配置与服务器自身限制决定。详细的修改方法请参见如何修改 WordPress 的上传上限。
| 服务 / CMS | 默认上限 | 备注 | 测试文件 |
|---|---|---|---|
| WordPress | 2MB〜10MB | 取决于 PHP 与服务器配置,可修改 | 9.9MB / 10MB / 10.1MB |
| Shopify | 20MB | 图片、视频与其他文件通用 | - |
云存储与开发者服务
云存储与开发者服务通常支持大容量上传,但单次请求的上限与分段上传的上限往往不同。
| 服务 | 上限大小 | 备注 |
|---|---|---|
| AWS S3 | 5GB(单次) / 5TB(分段) | 超过 100MB 建议使用分段上传 |
| Google Drive | 5TB | 需要存储套餐有可用空间 |
| Dropbox | 2GB(网页) / 50GB(桌面应用) | 通过 API 最高支持 350GB |
| GitHub | 100MB(单个文件) | 配合 Git LFS 最高 5GB;整个仓库建议不超过 5GB |
| Cloudflare(Free) | 100MB | Pro 500MB、Business 500MB、Enterprise 无限制 |
如何测试上传上限
要准确测出服务的上传上限,边界值测试最为有效。使用略小于、恰好等于、略大于上限的三个文件测试,即可验证校验逻辑是否精确。
DevLab 提供各种尺寸的阈值测试文件,大小精确到字节,并附有 MD5 与 SHA-256 校验值,可用于下载后的完整性核对。
注意事项
- 以上限制值为 2024 年时的信息,请以各服务的最新规格为准。
- 使用 Base64 编码时,实际可发送的文件大小约为标称上限的 75%(开销为 4/3 倍)。
- 同一服务内,上限也可能因套餐以及经由 API 还是浏览器而不同。
- 受网络环境与超时设置影响,即使未超上限也可能上传失败。