对于网站存储的需求,大多数人还是以私有网盘为主,目的是为了可以存储属于私人的视频、文档、音频等资料。但是,也有不少的人想要搭建一个公共的网盘,主要目的是可以方便所有人查看、浏览和下载、使用,同时也提供视频在线播放,变成影视站点。
这样的公共网盘服务搭建起来并不是很复杂,但是苦于高昂的存储费用,有的人盯上了超大容量且免费的网盘服务,例如OneDrive,团队版甚至可以达到TB以上,将OneDrive变身为公共网盘,挖站否之前有分享过:用GoIndex将Google Drive变身直链网盘。
这篇文章要分享的ZFile不仅支持OneDrive、OneDrive 世纪互联、SharePoint、SharePoint 世纪互联,还同时支持对象存储,你可以将阿里云OSS、腾讯云COS、又拍云USS、UFile、华为云OBS等第三方的对象存储服务变成你的公共网盘,供其它用户访问。
另外ZFile还支持FTP,S3协议,只要是支持FTP协议和S3协议的网站都是可以使用ZFile对接,总之ZFile是一个非常优秀的在线文件目录的程序, 支持各种对象存储和本地存储, 使用定位是个人放常用工具下载, 或做公共的文件库。前端基于 h5ai 的原有功能使用 Vue 重新开发、后端采用 SpringBoot, 数据库采用内嵌数据库。
更多的网盘存储服务,这里有:
PS:更新记录.
1、不想自建网盘的话,你也可以尝试一些大厂开发的网盘,这样会比较稳定:Aliyundrive阿里云盘-不限速免费网盘-支持分享,手机相册和微信/QQ 群文件自动备份。2021.8.20
网站:
一个VPS主机(必备)。ZFile网盘为非PHP,所以不能安装在虚拟主机上,你需要准备一台VPS主机,对于速度有要求的可以选择国外的CN2 GIA线路的VPS主机:CN2 GIA VPS主机收集整理汇总,更多的便宜VPS参考:VPS主机排行榜单。
一个域名(可选)。这个为可选,绑定域名主要是为了方便使用域名访问,且可以添加SSL证书,对于想要长期使用的朋友来说这个是必需的。当然,你如果习惯用IP访问也没有问题。
对于Linux系统,直接使用以下命令安装依赖环境:
# CentOS系统 yum install -y java-1.8.0-openjdk unzip# Debian 9 / Ubuntu 14+ apt update apt install -y openjdk-8-jre-headless unzip# Debian 10 (Buster) 系统 apt update && apt install -y apt-transport-https software-properties-common ca-certificates dirmngr gnupg wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ apt update && apt install -y adoptopenjdk-8-hotspot-jre
如为更新程序, 则请先执行
~/zfile/bin/stop.sh && rm -rf ~/zfile
清理旧程序. 首次安装请忽略此选项.
下载项目:
cd ~ wget https://c.jun6.net/ZFILE/zfile-release.war mkdir zfile && unzip zfile-release.war -d zfile && rm -rf zfile-release.war chmod +x zfile/bin/*.sh
下载指定版本可以将
zfile-release.war
改为zfile-x.x.war
,如zfile-2.2.war
。
程序的目录结构为:
├── zfile ├── META-INF ├── WEB-INF └── bin ├── start.sh # 启动脚本 └── stop.sh # 停止脚本 ├── restart.sh # 重启脚本
启动项目:
~/zfile/bin/start.sh
对于已经在自己的VPS主机安装了宝塔面板的朋友,可以直接使用Docker安装的方法。关于宝塔面板的安装教程请看:宝塔面板安装与使用图文教程。
输入镜像名称 zhaojun1998/zfile:latest
获取镜像,然后是创建容器,端口映射 8080-8080
,目录映射 /root/zfile/db:/root/.zfile/db 和/root/zfile/logs:/root/.zfile/logs
,如下图:
ZFile使用Docker安装成功。
访问地址:
用户前台: http://127.0.0.1:8080/#/main
初始安装: http://127.0.0.1:8080/#/install
管理后台: http://127.0.0.1:8080/#/admin
首先,进入到ZFile设置账号密码。
然后进入到ZFile后台,这里就可以看到有基本设置以及添加存储等。
进入阿里云对象存储OSS控制台,Bucket 列表-创建Bucket,填写名称,选择地域,读写权限选择公共读。
进入RAM访问控制。
先创建一个用户。
然后获得ID和Key,记得保存,否则下一秒它就不见了。
再返回点击刚刚创建的用户,给该用户授权,授权如下图:
现在回到ZFile,点击添加存储,选择OSS平台。
填写OSS的名称和地域节点,AccessKey ID 和 Secret,域名等,配置如下图:
ZFile添加阿里云OSS成功。关于阿里云OSS使用教程这里有:阿里云OSS使用方法。
在添加存储容器时,选择OneDrive,然后点击页面的获得令牌,将令牌填写进去就可以了。(点击放大)
ZFile添加腾讯云COS存储参考阿里云OSS,这里是腾讯云COS的API界面。
没有使用腾讯云COS的朋友,可以看教程:腾讯云COS作为图片等静态文件CDN加速方法-自动镜像无缝切换全球加速。
首先是创建又拍云USS存储。
然后是添加操作员,在这里选择操作员账号和密码,最后在ZFile添加存储时选择使用FTP协议。
关于又拍云存储,可以看教程:巧用又拍云FTP和坚果云WebDAV-打造个人文件备份和数据云存储。
先创建华为云OBS云存储。
然后到华为云OBS创建密钥。如下图:
先创建七牛云Kodo云存储。
然后在密钥管理中获得ID和Key。
有关于七牛云的使用方法请参考:七牛云CDN镜像存储。
Amazon S3创建存储。
获取Amazon S3密钥。
ZFile可以直接将你的阿里云OSS、腾讯云COS、又拍云USS、UFile、华为云OBS等第三方的对象存储目录下的所有文件展示出来,方便所有人浏览。
ZFile可以在线播放视频。
ZFile可以在线播放音乐。
这一步为可选项。首先,对于用宝塔面板Docker方式部署的ZFile,你需要到宝塔面板后台创建一个网站。
然后为你的网站申请好SSL证书,用SSL访问会更安全些。当然,你执意不做,这一步也可以省略。
最后直接在宝塔面板后台点击创建反向代@理,目标URL为 ip:8080(ZFile运行端口)。
现在你就可以使用域名访问ZFile了。
以下部分的反向代理配置参考的是Cloudreve的绑定域名配置,原理都是一样的,你只需要把端口号换成ZFile的8080即可:Cloudreve绑定域名。
如果是LNMP,打开你的域名Nginx配置文件,在网站的server
字段中加入:
location ~ / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://127.0.0.1:5212; # 如果您要使用本地存储策略,请将下一行注释符删除,并更改大小为理论最大文件尺寸 # client_max_body_size 20000m; }
如果是Oneinstack,打开你的域名Nginx配置文件,在网站的server
字段中加入:
location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://127.0.0.1:5212; # 如果您要使用本地存储策略,请将下一行注释符删除,并更改大小为理论最大文件尺寸 # client_max_body_size 20000m; }
如果是Apache,在VirtualHost
字段下加入反代配置项ProxyPass
,比如:
<VirtualHost *:80> ServerName myapp.example.com ServerAdmin webmaster@example.com DocumentRoot /www/myapp/public # 以下为关键部分 AllowEncodedSlashes NoDecod ProxyPass "/" "http://127.0.0.1:5212/" nocanon </VirtualHost>
添加完成后,重启nginx或者Apache,然后你就可以使用域名来访问了。
ZFile是一个非常优秀的网盘目录程序,推荐使用宝塔面板安装Docker镜像的方式运行ZFile,为了加快速度,你可以开启缓存。但是开启缓存后,会缓存文件夹中的内容,可以加快访问速度,但同样也可能会导致数据不一致。缓存每 30 分钟刷新一次。
文章出自:挖站否 https://wzfou.com/zfile/,版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。
文章更新于: %s = human-readable time difference 下午2:10
查看评论
不折腾了,我直接花钱购买会员了。
ZFile非常好,已经用上,谢谢博主分享
非常好用。感谢。
请问一下,为什么我在Docker那里添加目录映射是报错,报错代码是500
可能是命令格式不对,或者是网络不通导致的。
学习一下,没准哪天都用得上了。