一个用 Rust 编写的简易静态文件服务器,支持目录浏览、文件上传、Basic 认证和可选 HTTPS。
svenstaro/miniserve
一个单文件 Rust 命令行工具,可立即通过 HTTP 共享文件和目录,支持认证、上传和 TLS。
- Star
- 7,922
- Fork
- 401
- 未关闭 Issue
- 93
- 最近提交
- 24天前
这是什么?
miniserve 是一个小巧的命令行工具,无需搭建完整的 Web 服务器,就能通过 HTTP 共享文件。指定一个目录或单个文件后,它会提供可浏览的文件列表,也可以改为返回指定的首页文件。它以单个自包含的可执行文件分发,支持 Linux、macOS、Windows,并可通过 Cargo、Homebrew、Docker 和 Podman 安装。
除基本的文件服务外,它还支持用户名密码认证(明文或 SHA-256/SHA-512 哈希)、文件和目录上传、新建目录、按需开启的文件删除,以及文件夹即时打包下载(tar、tar.gz 或 zip)。它还能启用 TLS、添加自定义响应头、以 SPA 模式回退路由,并提供只读的 WebDAV 接口。
项目基于 Rust 和 Actix Web 框架构建,适合替代 Python 内置 HTTP 服务器或 netcat 等临时方案,并提供更好的 MIME 类型处理和更简单的 Windows 使用体验。
核心功能
- 01提供目录或单文件服务,可浏览文件列表,也可指定自定义首页文件。
- 02支持用户名密码认证,包括 SHA-256 和 SHA-512 哈希密码。
- 03支持文件上传、新建目录,以及可选的删除功能,并可限制到指定路径。
- 04可将文件夹即时打包为 tar、tar.gz 或 zip 下载。
- 05支持 TLS、自定义响应头、SPA 回退路由和只读 WebDAV。
- 06内置名称搜索、二维码显示、明暗主题和 Shell 自动补全。
适用场景
- 在同一局域网内快速把大体积 ISO 或文件夹分享给他人。
- 在本地提供静态网站或单页应用构建产物进行测试。
- 让手机通过浏览器把照片上传到电脑。
- 在家庭服务器上通过 systemd 运行带密码保护的文件共享服务。
快速上手
- 1
获取 miniserve 二进制文件(README 中提供了 Crates.io 和 Docker Hub 链接)
- 2
提供一个目录的访问
miniserve linux-distro-collection/
使用前须知
- ZIP 压缩在内存中完成,因此压缩大目录可能导致内存不足。
- TLS 仅支持部分架构。
收录于专题
标签
常见问题
- miniserve 是什么?
- 一个单文件 Rust 命令行工具,可立即通过 HTTP 共享文件和目录,支持认证、上传和 TLS。 miniserve 是一个小巧的命令行工具,无需搭建完整的 Web 服务器,就能通过 HTTP 共享文件。指定一个目录或单个文件后,它会提供可浏览的文件列表,也可以改为返回指定的首页文件。它以单个自包含的可执行文件分发,支持 Linux、macOS、Windows,并可通过 Cargo、Homebrew、Docker 和 Podman 安装。
- miniserve 可以免费使用吗?用的什么许可证?
- miniserve 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- miniserve 还在维护吗?
- 活跃维护中。miniserve 最近一次提交是在 2026年10月1日。
- miniserve 适合用来做什么?
- 在同一局域网内快速把大体积 ISO 或文件夹分享给他人。 在本地提供静态网站或单页应用构建产物进行测试。 让手机通过浏览器把照片上传到电脑。 在家庭服务器上通过 systemd 运行带密码保护的文件共享服务。
- miniserve 怎么安装和运行?
- 获取 miniserve 二进制文件(README 中提供了 Crates.io 和 Docker Hub 链接) 提供一个目录的访问: miniserve linux-distro-collection/
- 在哪里获取 miniserve?
- 源代码和安装说明在 GitHub 上:https://github.com/svenstaro/miniserve
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
基于 WSGI 的 Python WebDAV 服务器,可独立运行,也可嵌入其他 WSGI 应用。
一款用 Rust 编写的命令行文件服务器,支持静态服务、上传、搜索、权限控制和 WebDAV。
一个用 Rust 编写的单文件命令行工具,用于查看、评级和管理证书及 TLS 连接,是 OpenSSL 命令行的简易替代。
一个更智能的 cd 命令,记住常用目录,几个按键即可跳转,支持主流 shell。