在现代数字化办公环境中,文件共享和远程访问已成为日常工作的重要需求。基于 Go 语言开发的 webdav-server(hacdias/webdav)是一个轻量级且功能完整的 WebDAV 服务器实现,提供了简单而强大的文件共享解决方案。
核心优势
与传统的 FTP 或 Samba 共享相比,WebDAV 协议提供了更丰富的文件操作功能和更好的集成性,特别适合需要 Web 界面访问或与办公软件集成的场景。webdav-server 的核心优势包括:
- 轻量高效:单二进制文件部署,资源占用极低
- 安全可靠:支持 TLS 加密传输和多种认证方式
- 跨平台兼容:支持 Windows、Linux、macOS 等主流操作系统
- 权限精细控制:可配置用户级权限和目录访问规则
快速部署
安装服务
通过 Go 工具链直接安装最新版本是最便捷的方式:
go install github.com/hacdias/webdav/v5@latest
或者使用 Docker 一键部署,适合容器化环境:
docker pull ghcr.io/hacdias/webdav:latest
配置文件编写
创建 config.yml 文件来定义基本参数。注意密码建议使用 bcrypt 加密后的字符串,生产环境请避免明文存储。
address: 0.0.0.0
port: 6060
directory: /data
users:
- username: admin
password: "{bcrypt}$2y$10$zEP6oofmXFeHaeMfBNLnP.DO8m.H.Mwhd24/TOX2MWLxAExXi4qgi"
permissions: CRUD
启动服务
使用配置文件启动本地实例:
webdav --config config.yml
若使用 Docker 运行,需映射端口和数据卷:
docker run -p 6060:6060 -v $(pwd)/config.yml:/config.yml -v $(pwd)/data:/data ghcr.io/hacdias/webdav -c /config.yml
实战场景
团队文档协作
为不同角色分配不同的目录权限是常见需求。以下配置实现了分层管理:管理员拥有所有读写权限,开发人员仅能读写特定目录,访客只能读取公开内容。
port: 8080
directory:

