一个实用文件服务器,它支持静态文件服务、文件上传、搜索、访问控制以及 WebDAV 等功能。

文摘   2024-11-18 20:16   广东  

dufs

一个独特的实用文件服务器,它支持静态文件服务、文件上传、搜索、访问控制以及 WebDAV 等功能。

Github地址

https://github.com/sigoden/dufs

特性

  • • 静态文件服务

  • • 将文件夹下载为 zip 文件

  • • 上传文件和文件夹(支持拖放)

  • • 创建/编辑/搜索文件

  • • 支持断点续传和部分上传/下载

  • • 访问控制

  • • 支持 HTTPS

  • • 支持 WebDAV

  • • 易于使用 curl 命令行工具

安装

使用 Cargo 安装

shell

cargo install dufs

使用 Docker 安装

shell

docker run -v `pwd`:/data -p 5000:5000 --rm sigoden/dufs /data -A

使用 Homebrew 安装

shell

brew install dufs

在 macOS、Linux、Windows 上安装

从 GitHub Releases 下载二进制文件,解压并添加 dufs 到你的 $PATH。

命令行界面(CLI)

Dufs 提供了丰富的命令行选项,可以指定配置文件、绑定地址、监听端口、路径前缀等。它还支持多种授权规则,允许或禁止上传、删除、搜索等操作,并能自定义 HTTP 日志格式。

示例

  • • 以只读模式服务当前工作目录:

    dufs
  • • 允许所有操作(如上传/删除/搜索/创建/编辑):

    dufs -A
  • • 只允许上传操作:

    dufs --allow-upload
  • • 服务特定目录:

    dufs Downloads
  • • 服务单个文件:

    dufs linux-distro.iso
  • • 服务单页应用程序(如 React/Vue):

    dufs --render-spa
  • • 服务带有 index.html 的静态网站:

    dufs --render-index
  • • 需要用户名/密码:

    dufs -a admin:123@/:rw
  • • 监听特定主机/IP:

    dufs -b 127.0.0.1 -p 80
  • • 监听 Unix 套接字:

    dufs -b /tmp/dufs.socket
  • • 使用 HTTPS:

    dufs --tls-cert my.crt --tls-key my.key

API

Dufs 提供了一系列 API,允许用户通过 curl 命令行工具或其他 HTTP 客户端进行文件上传、下载、删除、创建目录、移动文件/文件夹、列出/搜索目录内容等操作。同时,它还支持带授权的基本认证和摘要认证,以及断点续传的下载和上传功能。


github淘金
打破信息差,不为免费而付费。关注我,每日分享各种有趣,实用的开源项目。
 最新文章