前言
此项目是一个在线文件目录的程序, 支持各种对象存储和本地存储, 使用定位是个人放常用工具下载, 或做公共的文件库. 不会向多账户方向开发.
前端基于 h5ai 的原有功能使用 Vue 重新开发了一遍. 后端采用 SpringBoot, 数据库采用内嵌数据库.
最近开发了一个在线网盘程序 ZFile, 支持各种对象存储、OneDrive、FTP、本地存储. 本文包含普通用户和宝塔用户的安装方式.
系统特色
- 内存缓存 (免安装)
- 内存数据库 (免安装)
- 个性化配置
- 自定义目录的 header 说明文件
- 自定义 JS, CSS
- 文件夹密码
- 支持在线浏览文本文件, 视频, 图片, 音乐. (支持 FLV 和 HLS)
- 文件/目录二维码
- 缓存动态开启, 缓存自动刷新
- 全局搜索
- 支持 阿里云 OSS, FTP, 华为云 OBS, 本地存储, MINIO, OneDrive 国际/家庭/个人版, OneDrive 世纪互联版, 七牛云 KODO, 腾讯云 COS, 又拍云 USS.
安装依赖环境:
1 | # CentOS系统 |
如为更新程序, 则请先执行 rm -rf ~/zfile
清理旧程序. 首次安装请忽略此选项.
下载项目
1 | wget -P ~ https://c.jun6.net/ZFILE/zfile-1.2.war |
目录结构
1
2
3
4
5
6
7
├── zfile
├── META-INF
├── WEB-INF
└── bin
├── start.sh # 启动脚本
└── stop.sh # 停止脚本
├── restart.sh # 重启脚本
启动项目
1 | ~/zfile/bin/start.sh |
停止项目
1 | ~/zfile/bin/stop.sh |
重启项目
1 | ~/zfile/bin/restart.sh |
修改配置文件
1 | vim ~/zfile/WEB-INF/classes/application.yml |
默认启动端口为 8080, 如需请配置文件请编辑上述文件, 修改后重启程序生效.
开放端口 (重点)
如部署后无法访问, 请检查防火墙是否开启此端口:
访问地址:
用户前台:http : //127.0.0.1 : 8080/#/main
初始安装:http : //127.0.0.1 : 8080/ #/install
管理后台:http : //127.0.0.1 : 8080/#/admin
OneDrive使用教程。
访问地址进行授权,获取accessToken和refreshToken:
国际/家庭/个人版:
世纪互联版:
然后分别填充至访问令牌和刷新令牌即可:
运行环境
- JDK:
1.8
- 缓存:
caffeine
- 数据库:
h2/mysql
预览
常见问题
数据库
缓存默认支持h2
和mysql
,前者为嵌入式数据库,无需安装,但相对相对更好。
默认路径
默认H2数据库文件地址:~/.zfile/db/
,~
表示用户目录,windows为C:/Users/用户名/
,linux为/home/用户名/
,root用户为/root/
头尾文件和加密文件
- 目录清单显示文件清单
header.md
- 目录需要密码访问,添加文件
password.txt
(无法拦截此文件被下载,但可以改名文件)
- 本文标题:记一次在线网盘程序Z-File安装
- 本文作者:PlutoTz
- 创建时间:2020-02-04 15:43:45
- 本文链接:https://blog.gitiu.com/posts/50193/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!