最近想给自己搭一个随时能访问的 ,且 免费 的 WebDAV ,用来在手机和电脑之间同步一些文件以及同步一些小工具的配置文件,比如 cc-switch,clash 之类的。希望少维护一台服务器,也不想为低频的个人文件访问单独租机器,于是做了这个东东(在此疯狂感谢 cf 大善人,简直是赛博活菩萨):
https://github.com/CallMeKingsley97/cf-free-webdav
它用 Cloudflare Workers 处理 WebDAV 请求,用私有 R2 bucket 保存文件。当前支持 Basic Auth ,以及常用的文件和目录操作:
GET、HEAD、PUTPROPFIND、MKCOL、DELETECOPY、MOVE- 支持空目录和文件字节范围读取
可以连接已有 GitHub 仓库部署到 Cloudflare Workers ,也可以用 Wrangler 从本地部署。部署后配置 WEBDAV_PASSWORD Secret ,再用任意 WebDAV 客户端连接 /dav/ 路径即可。具体步骤写在 README 里。
目前是面向个人使用的早期版本,还不支持 LOCK / UNLOCK,自定义 WebDAV 属性也不会持久化;单次上传受 Cloudflare 请求体大小限制。Cloudflare 的免费额度适合个人低频使用,但额度和计费规则可能变化,超出后可能产生费用,所以千万注意不要被反薅了。
如果你觉得这个项目有用,欢迎点个 Star 。也欢迎反馈你用的 WebDAV 客户端和遇到的问题,我会继续完善兼容性