简介

来源

作者:@zhaojun1998
GitHub:https://github.com/zhaojun1998/zfile
演示:https://zfile.jun6.net/

此项目是一个在线文件目录的程序, 支持各种对象存储和本地存储, 使用定位是个人放常用工具下载, 或做公共的文件库. 不会向多账户方向开发.前端基于 h5ai 的原有功能使用 Vue 重新开发了一遍. 后端采用 SpringBoot, 数据库采用内嵌数据库.

系统特色

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

运行环境

  • JDK: 1.8
  • 缓存: caffeine
  • 数据库: h2/mysql

部署

安装依赖环境

# CentOS系统
yum install -y java-1.8.0-openjdk unzip

# Debian/Ubuntu系统
apt update
apt install -y openjdk-8-jre-headless unzip

下载项目

wget -P ~ https://c.jun6.net/ZFILE/zfile-0.9.war
cd ~
mkdir zfile && unzip zfile-0.9.war -d zfile && rm -rf zfile-0.9.war
chmod +x ~/zfile/bin/*.sh

说明

目录结构为

├── zfile
    ├── META-INF
    ├── WEB-INF
    └── bin
        ├── start.sh    # 启动脚本
        └── stop.sh     # 停止脚本
        ├── restart.sh  # 重启脚本

命令

启动项目:

 ~/zfile/bin/start.sh

停止项目:

 ~/zfile/bin/stop.sh

重启项目:

 ~/zfile/bin/restart.sh

修改配置文件:

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

  1. 访问地址进行授权, 获取 accessToken 和 refreshToken:
  2. 国际/家庭/个人版
  3. 世纪互联版
  4. 分别填写至访问令牌和刷新令牌

常见问题

数据库

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

默认路径

默认 H2 数据库文件地址: ~/.zfile/db/, ~ 表示用户目录, windows 为 C:/Users/用户名/, linux 为 /home/用户名/, root 用户为 /root/

头尾文件和加密文件

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

Last modification:January 30, 2020
如果觉得我的文章对你有用,欢迎打赏!