不想再给网盘会员续费、又嫌 Nextcloud 太重的,可以看看开源项目 Personal Drive。作者刚发布了筹备已久的 v2 版本:Laravel 11 + React 写的单机网盘,SQLite 存数据,一台便宜 VPS 就带得动。
v2 补上了之前最缺的几块:TOTP 两步验证(Google Authenticator 之类的都支持)、带密码的加密上传(客户端 AES-256 打包成 zip)、有声书播放能记住进度、收藏夹、Ctrl+G 输文件夹名直达目录、反向代理支持。分享功能是它的强项——文件可以设密码、设过期时间、自定义分享链接,还有一个分享管理面板能随时暂停或删除外链。经常要给客户传交付物的人,会明白这几个控制项有多省心。
部署比想象中简单,官方镜像在 Docker Hub 上,新建目录写一个 docker-compose.yml 把数据目录挂出来:
services:
personal-drive:
image: docker.io/personaldrive/personaldrive
ports:
- "8080:80"
volumes:
- /data/drive:/var/www/html/personal-drive-storage-folder
- personal-drive-data:/var/www/html/personal-drive/database/db
environment:
APP_URL: https://drive.yoursite.com
前面挂一个 Caddy 反代就自动上 HTTPS,三行配置的事。不想用 Docker 的话,仓库里有引导式 setup.sh,克隆下来跑一遍即可。
几个要想清楚的点:它没有 Nextcloud 那种日历、联系人、在线协作全家桶,就是个纯粹的文件管理和分享工具;完整静态加密在作者的搁置清单上,服务器管理员理论上读得到文件,敏感资料要靠客户端加密上传兜底;管理员密码设计成不可修改(为了缩小攻击面),忘了只能重装或直接改数据库文件,会丢掉所有分享链接;传大文件记得调 php.ini 和 Web 服务器的上传限制,文档里有现成参数。
谁适合:想要一个轻量、自己掌控、能体面分享文件的个人站长或小团队。项目 Apache-2.0 开源,测试做得认真,仓库还挂着在线 Demo 可以先上手看看。仓库地址:gyaaniguy/personal-drive。
登录 后参与评论