Z-File 在线网盘程序,支持对象存储、本地存储、S3 协议、OneDrive 商业/家庭/个人/世纪互联版

前言

此项目是一个在线文件目录的程序, 支持各种对象存储和本地存储, 使用定位是个人放常用工具下载, 或做公共的文件库. 不会向多账户方向开发.

前端基于 h5ai 的原有功能使用 Vue 重新开发了一遍. 后端采用 SpringBoot,A g * 数据库采用内嵌数据库.

预览地址: https://zfile.jun6.net
项目地址: https://github.com/zhaojun1998/zfile

系统特色

  • 内存缓存 (免安装)
  • 内存数据库 (免安装)
  • 个性化配置
  • 自定义目录的 header 说明文件
  • 自定义 JS, CSS
  • 文件夹密码
  • 支持在线浏览文本文件, 视频, 图片, 音乐. (支持 FLV 和 HLS)
  • 文件/目录二维码
  • 缓存动态开启, 缓存自动刷新
  • 全局搜索
  • 支持 阿里云 OSS, FTP, 华为云 OBS, 本t ) | p N _ $地存储, MINIO, OneDris C v c Wve 国际/( f K X [ 3家庭/个人版, OneDrive 世纪互联版, 七牛T Y I e云 KODO, 腾讯云 COS, 又拍云 USS.

快速开始

安装依赖环境:

1
2
3
4
5
6
# CentOS系统
yum install -y java-1.8.0-o| c c +penjdk unzip

# Debian/Ubuntu系i f 7 f 7 f
apt update
apt install -y openjdk-8-jre-headless unzip

如为更新? 9 1 ) @ V R程序, 则请先执行 rm -rf ~/zf) i u @ D Aile 清理旧程序. 首次安装请忽Z 7 - B w I略此选项.

下载项目:

1
2
3
4
wget -P ~ https://c.jun6.net/ZFILE/zfile-release.war
cd ~
mkdir zfile && unzip zfiD w 8 q % a Ule-release.war -d zfile &&am2 l ( D k ;p; rm -rf zfile-release.war
chmod +x ~/zfile/bin/*.sh

程序的目录结构为:

1
2
3
4
5
6
7
├──P E @ p 1 ; 2 T m zfile
├── META-INF
├── WEB-INF} D J -
└── bi/ . 0 C m l s X Yn
e ! D | s & = d #── start.sh # 启动脚本
└── stop.sh # 停止脚本
├── restart.sh # 重启脚本

启动项目/ { 5 M p 8:

1
~/zfile/bin/star; X ` c N c a T ot.sh

篇幅有限, 更详细# T 5 B L * x R的安装教程请参考: 安装文档

访问地址:

用户前台: http://127.0.x n j g h k I 2 e0.1:8080/#/main

初始安装j X { 5 (: http://127.0.0.1:) P F o J 8080/#/install

管理后台: http://127.0.0.1:8080/#/admin

OneDrive 使用教程.

访问地址进行授权, 获取 accessToken 和 refreshToken:

国际/家庭/个人版:

https:/k H O = //login.mi( d ? _ x ) hcrosoftonline.com/common/oauth2/v2.0/authorize?client_id=09939809-c617-43c8-a220-a93c1513c5d4I 6 m&respo% 4 o D b y &nse_typej z /=code&redirect_uri=https://zfile.jun6.net/onedirve/callb( K 7 , L # * Eack&scope=offline_access%20User.Read%20Files.ReadWrite.All

世纪互联版:

https://login.chinacloudapi.cn/common/oauth2/v2.0/authorize?client_id=4a72d927-1907-488d-u x e d 9 99eb24 2 2 O k * X [-1b465c53c1c5&response_type=code&red} w 8 ` s c ( %ireF P j ] h 8 X 6 ]ct_uri=https://zfile.jun6.net/onedirve/china-callba% 0 C - 8 9ck&scope=offline_access%20User.Read%20Files.ReadWrite.All

然后分别填写至访问令牌和刷新令牌即可:

Z-File 在线网盘程序,支持对象存储、本地存储、S3 协议、OneDrive 商业/家庭/个人/世纪互联版

运行环境

  • JDK: 1.8+ 0 s h
  • 缓存: caffeine
  • 数据库: h2/mysql

预览

Z-File 在线网盘程序,支持对象存储、本地存储、S3 协议、OneDrive 商业/家庭/个人/世纪互联版
Z-File 在线网盘程序,支持对象存储、本地存储、S3 协议、OneDrive 商业/家庭/个人/世纪互联版
Z-File 在线网盘程序,支持对象存储、本地存储、S3 协议、OneDrive 商业/家庭/个人/世纪互联版
Z-File 在线网盘程序,支持对象存储、本地存储、S3 协议、OneDrive 商业/家庭/个人/世纪互联版

常见问题

数据库

缓存默认支持 h2mysql, 前者为嵌入式数据库, 无需安装, 但后者相对性能更好.

默认路径

默认 H2 数据库文件2 W V 9 P w p d地址: ~/.zfile/db/, ~ 表示用户目录, windows 为 C:/Users/用户名/, linux 为 /home/用户名/, root 用户为 /root/

头尾文件和加密文件

  • 目录头部显示文件名为 header.md
  • 目录需要密码访问, 添加文件 password.txt (无法拦截此文件被下载, 但可以改名文件)

TODO

  • AB 2 &PI 支持 Y ) v p击查看文档
  • 更方便的部Q p n Y | A V - X署方式
  • 文本预览更换更好用的编辑器
  • 后台支持上传、编辑、删除等操作
  • WebDav 支持
  • Docker 支持

支持作者

如果本项目对你有帮助,请作者喝杯咖啡吧。

Z-File 在线网盘程序,支持对象存储、本地存储、S3 协议、OneDrive 商业/家庭/个人/世纪互联版
Z-File 在线网盘程序,支持对象存储、本地存储、S3 协议、OneDrive 商业/家庭/个人/世纪互联版