1 MB 的 ZIP 测试文件
文件信息
| 文件格式 | ZIP |
|---|---|
| 文件大小 | 1 MB(1,048,764 字节) |
| MIME Type | application/zip |
| MD5 | 187fce52fd78f14e20074cfdb5d09f88 |
| SHA-1 | a2d07ef7f0cd7102ce2235525b04de5b5ccaf51a |
| SHA-256 | 925dae377bd5b8db8f9907e762aca78b78fb69f0755db007e201653417cf4695 |
通过命令行下载
curl
curl -O https://devlab.itlibra.com/files/zip/zip-1mb.zip
wget
wget https://devlab.itlibra.com/files/zip/zip-1mb.zip
PowerShell
Invoke-WebRequest -Uri "https://devlab.itlibra.com/files/zip/zip-1mb.zip" -OutFile "zip-1mb.zip"
关于此文件
1 MB 的 ZIP 测试文件,大小正好为 1,048,764 字节。免注册、完全免费,可用于验证上传限制和文件处理行为。
上方列出的 MD5 / SHA-1 / SHA-256 是根据本文件内容计算出的真实哈希值。下载后重新计算并比对,即可确认传输过程中未发生损坏;它们也可直接作为测试哈希库时的预期值。
这个大小在实际开发中的意义
1 MB 恰好等于 nginx client_max_body_size 的默认值(1m)。在没有显式配置该指令的反向代理后面,超过这个大小的请求根本到不了应用层,nginx 会直接返回 413 Request Entity Too Large。
因此它最适合复现这个经典事故:应用侧上限已调到 10 MB,却仍在 1 MB 处被拒。如果应用日志里根本看不到这个 413,原因几乎都在前面的代理层。
这个容量的直观参考
在 10 Mbps 线路上传输约需 839 毫秒,100 Mbps 约需 84 毫秒。转换为 Base64 后约膨胀至 1,366 KB。
ZIP 的压缩率会因内容不同而相差数个数量级:以文本为主的压缩包解压后可膨胀 3〜5 倍,而已压缩的图片或视频几乎不变。可用这个 1 MB 的压缩包判断磁盘空间检查是否需要按解压后大小来计算。
针对该格式应确认的要点
ZIP 以 PK\x03\x04 开头,但其内容清单(中央目录)位于文件末尾。因此仅读取开头无法得知内容,一旦尾部缺失便无法解压。
- 是否对解压后的总大小设限(ZIP 炸弹滥用压缩率,可将几 KB 展开为数 GB)
- 是否拒绝条目名中包含
../的情况(即 Zip Slip 目录穿越攻击) - 是否支持流式解压,还是必须先将整个压缩包写入磁盘
常见问题 (FAQ)
- 此文件可以免费使用吗?
- 是的,完全免费且无需注册。可用于任何商业或非商业的测试/验证目的。
- 文件内容是什么?
- 为测试生成的虚拟数据,大小精确符合标示。
- 哈希值有什么用?
- 可验证下载文件的完整性,或作为哈希库的测试数据。