一.下载&部署
在kk开源社区置顶帖下载最新发行包
Linux环境部署
1.安装java8或以上版本iava运行环境
2.解压下载的发行包 kkFileView-4.3.0.tar.gz
tar -zxvf kkFileView-4.3.0.tar.gz (百度网盘)
3.进入解压后 kkFileView-4.3.0/bin 文件夹
4.执行 ./startup.sh 启动kkFileView
Windows环境部署
1.安装java8或以上版本java运行环境
2.解压下载的发行包 kkFileView-4.3.0.zip
3.使用管理员身份打开cmd,并作用cd命令进入解压后 kkFileView-4.3.0\bin 文件夹
4.执行 .lstartup.bat 启动kkFileView
Docker环境部署
1.安装Dokcer最新版本
2.下载Docker版本离线发行包 kkFileView-4.3.0-docker.tar
3.加载Docker镜像
docker load -i kkFileView-4.3.0-docker.tar
4.运行Docker镜像
docker run -it -p 8012:8012 keking/kkfileview:4.3.0
5.Docker版本修改配置项
Docker版本支持使用环境变量修改系统配置项,环境变量的KEY为配置文件中每个配置项后S4中的KEY
例如,使用Docker运行要指定base.url为http://file.kkview.cn,Docker运行命令如下
docker run -it -e KK BASE URL='http://file.kkview.cn’ -p 8012:8012keking/kkfileview:4.3.0
乱码问题:
字体问题
大部分Linux系统上并没有预装中文字体或字体不全,需要把常用字体拷贝到Linux服务器上,具体操作如下:下载如下字体包 http://kkfileview.kekinq.cn/fonts.zip (百度网盘) 文件解压完整拷贝到Linux下的/usr/share/fonts日录。然后依次执行mkfontscale、mkfontdirfc-cache使字体生效;
Linux字体文件放在/usr/share/font/,只要将字体文件拷贝到这里就可以了。
这里示例安装Windows的所有字体。
1,新建路径存放字体库:/usr/share/fonts/
2,进入Windows下> 的字体库目录c:\windows\Fonts。复制字体库到创建好的字体库目录/usr/share/fonts/。
3,进入字体库目录,刷新系统即刻生效,输入命令:mkfontscale ; mkfontdir ; fc-cache。
查看系统字体
在开始安装之前,我们先查看系统中已经安装的字体。
要查看系统中已经安装的字体,我们可以使用fc-list命令进行查看。如果系统中没有该命令的话,我们需要先安装相关的软件包。
查看系统类型:cat /etc/issue
在centos上,使用如下命令进行安装:
yum install -y fontconfig mkfontscale
二.使用说明
普通http/https文件下载链接
当您的项目内需要预览文件时,只需要调用浏览器打开本项目的预览接口,并传入须要预览文件的url,示例如下:
<script src="https://unpkg.com/js-base64@3.6.0/base64.js"></script>
var url ='http://127.0.0.1:8080/file/test.txt’; //要预览文件的访问地址window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(Base64.encode(previewUrl)));
http/https下载流url预览
很多系统内不是直接暴露文件下载地址,而是请求通过id、code等参数到通过统一的接口,后端通过id或code等参数定位文件,再通过OutputStream输出下载,此时下载url是不带文件后缀名的,预览时需要拿到文件名,传一个参数 fullfilename=xxxxxx 来指定文件名,示例如下
<script src="https://unpkg.com/js-base64@3.6.0/base64.js"></script>
var originUrl =’http://127.0.0,1:8080/filedownload?fileId=1’: //要预览文件的访问地址
var previewUrl = originUrl + &fullfilename=test.txtwindow.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(Base64.encode(previewUrl)));