kkfileview代理配置,Vue对接kkfileview实现图片word、excel、pdf预览

kkfileview部署

官网:https://kkfileview.keking.cn/zh-cn/docs/production.html
在这里插入图片描述

这个是官网部署网址,这里推荐大家使用docker镜像部署,因为我是直接找运维部署的,所以这里我就不多说明了,主要说下nginx代理配置,以及接入kkfileview实现图片预览和Office系列的预览。

这里可以给大家提供一个银河麒麟v10上面部署的方案,建议使用如下方法的话去找经验丰富的运维,不过对于运维来说比较简单,对于Java开发,就我个人来说难死了。
因为我们服务器是银河麒麟v10,国产芯片(好像是鲲鹏),并且不能连接外网,所以只能离线部署,试了官网上的好多方案,包括一些博客的方案,都不太行,一开始我自己部署,最后实在没办法,找了运维工程师,他也不行,最后实在没办法我们找了一台同样的可以连接外网的服务器,然后把docker镜像下载下来,然后把镜像文件下载下来,传到这台服务器上,可以用。(有同样场景的同仁可以试试这个办法)

kkfileview代理配置

配置文件

Nginx代理的时候因为没有根目录了,我们只能代理到二级目录下:首先在启动的时候需要给kkfileview添加二级目录,我这里是使用docker启动的,可以使用--volume参数把配置文件映射出来,然后修改配置文件,这里找的运维,我是真不会,我是菜鸡。
首先添加二级路径:
在这里插入图片描述
下面base.url也要写上二级路径,前面的就是代理出去的外网地址:
在这里插入图片描述

主要就是上面这两个位置,如果不这么写的话,后面不同格式文件预览会出问题
别的配置大家就根据自己业务需要调整就可以了

Nginx代理

http {# 文件预览(这里是内网ip地址)upstream preview-web {server 192.168.134.23:8012;}server {#文件预览(这里需要带上二级路径)location /preview {proxy_pass http://preview-web/preview;proxy_redirect default;proxy_set_header Host $host;proxy_set_header Referer $http_referer;proxy_set_header Cookie $http_cookie;proxy_set_header X-Real-Ip $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}
}

配置完之后如果生产环境建议使用命令测试启动下,不然搞挂了就尴尬了

# 测试命令
nginx -t
# 启动命令
nginx -s reload

配置完之后可以外网访问下看能不能看到

Vue对接kkfileview实现图片word、excel、pdf预览

对接方式大家参考官方的给出的对接方案就行:
我这里是使用的最新的4.x的版本,所以使用最新的

<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/js-base64@3.6.0/base64.min.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(url)));

图片的预览

到那时配置了代理之后会出现一些问题,首先:
如果我们的图片是放在文件服务器上或者服务器本地,然后使用nginx代理出来的,或者第三方的oss
那么直接按照上述的方式去接入预览就好了

vue的话需要下载 js-base64

npm install js-base64

随后在需要接入预览的Vue文件中引入:

previewFile : 是文件的url 地址(外网的地址)
vitePreviewUrl: http://127.0.0.1:8012/preview/onlinePreview?url=

<template>
<iframev-if="previewFile.toLowerCase().includes('.png') ||previewFile.toLowerCase().includes('.jpg') ||previewFile.toLowerCase().includes('.jpeg')"class="preview_file"frameborder="0"width="100%":src="vitePreviewUrl + encodeURIComponent(Base64.encode(previewFile))"></iframe>
</template>
<script setup lang="ts">
import { Base64 } from 'js-base64'
</script>

图片的话这样就可以了因为图片是直接请求的图片的url地址返回的的图片展示出来的
在这里插入图片描述

Office系列预览

使用上述的方法对图片的支持是没有问题的,但是对Office系列的文件不太行,首先Office系列的文件他会缓存到kkfileview的本地,然后分解成一张张图片随后返回过来实现预览,所以kkfileview会在服务器去发送请求下载这个office文件,因为我们的文件也是上传在内网一台服务器上的minio文件服务器中,并且内外网做了隔离,只开放一个端口,使用nginx代理出去,所以内网服务器上部署的kkfileview直接访问文件的url地址他是找不到文件的,kkfileview部署在内网,文件url是外网地址,内外网隔离的情况下,就需要把文件url预览地址转化为内网的预览地址,让他去下载缓存。
因此预览office文件的时候需要将文件外网的url地址转化成内网的url地址:

<!--    其他文件    --><iframev-elseclass="preview_file"frameborder="0"width="100%":src="vitePreviewUrl +encodeURIComponent(Base64.encode(previewFile.replace(viteOutUrl, viteInnerUrl)))"></iframe>

使用replace函数直接替换成内网地址,给大家展示一个原理图,没有去研究源码,但是根据请求返回结果和接入时候出现的各种问题,应该大差不差,有问题,大家即时指正。
图片预览
在这里插入图片描述
在这里插入图片描述
文件预览
在这里插入图片描述
在这里插入图片描述

后续有时间研究研究源码可能会更好,如果有不对的地方请大家指正。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/495039.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Vue3实战教程》5:响应式基础

如果您有疑问&#xff0c;请观看视频教程《Vue3实战教程》 响应式基础​ API 参考 本页和后面很多页面中都分别包含了选项式 API 和组合式 API 的示例代码。现在你选择的是 组合式 API。你可以使用左侧侧边栏顶部的“API 风格偏好”开关在 API 风格之间切换。 声明响应式状态…

EasyExcel停更,FastExcel接力

11月6日消息&#xff0c;阿里巴巴旗下的Java Excel工具库EasyExcel近日宣布&#xff0c;将停止更新&#xff0c;未来将逐步进入维护模式&#xff0c;将继续修复Bug&#xff0c;但不再主动新增功能。 EasyExcel以其快速、简洁和解决大文件内存溢出的能力而著称&#xff0c;官方…

深入解读数据资产化实践指南(2024年)

本指南主要介绍了数据资产化的概念、目标和意义&#xff0c;以及实施数据资产化的过程。指南详细阐述了数据资产化的内涵&#xff0c;包括数据资产的定义、数据资产化的目标与意义&#xff0c;并介绍了数据资产化的过程包括业务数据化、数据资源化、数据产品化和数据资本化。 …

广州大学计算机组成原理课程设计

一.课设性质&#xff0c;目的&#xff0c;任务 《计算机组成与系统结构课程设计》是计算机学院各专业集中实践性环节之一&#xff0c;是学习完《计算机组成与系统结构》课程后进行的一次全面的综合练习。其目的是综合运用所学计算机原理知识&#xff0c;设计并实现一台模型计算…

MimicBrush:智能图像编辑新宠,能否革新你的创意设计?

一、介绍 MimicBrush 是一款由阿里巴巴和香港大学联合研发的图像编辑工具&#xff0c;它通过模仿参考图像&#xff0c;对目标图像选定区域进行自动局部编辑。以下是关于 MimicBrush 的详细介绍&#xff1a; 1.技术特点 智能匹配 &#xff1a;利用尖端 AI 技术&#xff0c;Mi…

QT用Enigmavb 打包成单独exe

QT用这个工具打包成单个exe&#xff0c;然后再用winrar打包成zip可以发给别人 在之前需要用QT的release打包 之前的文章QTrelease打包【非单个exe】 Enigmavb 打包流程&#xff1a; 安装过程&#xff1a; next-》i accept -》选择安装位置 -》next -》Create a desktop ic…

f(f(x))=x^2 -11x+36, 求f(6)的值,

偶然看到的一个题目&#xff0c;一时兴起&#xff0c;做了一下。题目如下 简单粗暴的思路是待定系数法&#xff0c;盲猜f(x)是个2次函数&#xff0c;令f(x)ax^2bxc ,带入原式&#xff0c;发现矛盾&#xff08;计算略&#xff09;就想放弃了。 忽然看到如果带入6 的话&#xf…

华为浏览器(HuaweiBrowser),简约高效上网更轻松

华为浏览器是一款由华为公司自主研发的网页浏览工具&#xff0c;凭借其独特的设计理念和优质的用户体验&#xff0c;正在吸引越来越多的用户关注。这款基于Chromium技术打造的浏览器不仅继承了Chrome的高性能特质&#xff0c;更融入了华为自身的创新元素&#xff0c;为用户打造…

Ubuntu下ESP32-IDF开发环境搭建

Ubuntu下ESP32-IDF开发环境搭建 文章目录 Ubuntu下ESP32-IDF开发环境搭建一、前言二、软件安装三、开发环境搭建3.1 ESP-IDF安装&#xff1a;3.2 安装编译工具&#xff1a; 四、编译并烧录代码五、ESP32代码编辑工具 一、前言 ​ 开发ESP32&#xff0c;我们首先就要安装开发环…

修炼内功之函数栈帧的创建与销毁

修炼内功之函数栈帧的创建与销毁 一 前置知识&#xff08;1&#xff09;栈&#xff08;2&#xff09;相关寄存器和汇编指令 二 函数栈帧三 代码演示函数栈帧的创建&#xff08;1&#xff09;代码演示&#xff08;2&#xff09;函数栈帧逐帧分析 四 对开篇问题的解答 相信来CSDN…

学习threejs,THREE.PlaneGeometry 二维平面几何体

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;threejs gis工程师 文章目录 一、&#x1f340;前言1.1 ☘️HREE.PlaneGeometry 二维平…

SpringCloud 入门(4)—— 网关

上一篇&#xff1a;SpringCloud 入门&#xff08;3&#xff09;—— Nacos配置中心-CSDN博客 Spring Cloud Gateway 作为 Spring Cloud 生态系统的一部分&#xff0c;主要在微服务架构中充当 API 网关的角色。它提供了统一的入口点来处理所有的 HTTP 请求&#xff0c;并将这些请…

石岩基督教福音堂

周末娃&#xff0c;娃的阿婆和我一起去石岩基督教福音堂做礼拜。 这是我第一次进入石岩的教堂。教堂很高。应该有3,4层楼高。 这周末做礼拜的人很多一楼人满了&#xff0c;阿婆去二楼做礼拜&#xff0c;娃和我去三楼的儿童室。很多家长楼下做礼拜&#xff0c;小朋友被安排三楼…

论文《Vertical Federated Learning: Concepts, Advances, and Challenges》阅读

论文《Vertical Federated Learning: Concepts, Advances, and Challenges》阅读 论文概况纵向联邦VFL框架介绍问题定义VFL 训练协议 对通信效率的优化对性能的优化自监督方案&#xff08;Self-Supervised Approaches&#xff09;半监督方案&#xff08;Semi-Supervised Approa…

如何用gpt来分析链接里面的内容(比如分析论文链接)和分析包含多个文件中的一块代码

如何用gpt来分析链接里面的内容&#xff0c;方法如下 这里使用gpt4里面有一个网路的功能 点击搜索框下面这个地球的形状即可启动搜索网页模式 然后即可提出问题在搜索框里&#xff1a;发现正确识别和分析了链接里面的内容 链接如下&#xff1a;https://arxiv.org/pdf/2009.1…

本地部署webrtc应用怎么把http协议改成https协议?

环境&#xff1a; WSL2 Ubuntu22.04 webrtc视频聊天应用 问题描述&#xff1a; 本地部署webrtc应用怎么把http协议改成https协议&#xff1f; http协议在安卓手机浏览器上用不了麦克风本&#xff0c;来地应用webrtc 本来是http协议&#xff0c;在安卓手机上浏览器不支持使…

面向未来的教育技术:智能成绩管理系统的开发

3.1 可行性研究 成绩管理系统开发实现分析需要从不同的角度来进行分析可行性&#xff0c;比如从时间角度&#xff0c;经济角度&#xff0c;甚至操作角度。从不同的角度分析可行性会让成绩管理系统开发具体化&#xff0c;进而达到辩证开发的正确性。 3.1.1 经济可行性 从经济方面…

zabbix监控山石系列Hillstone监控模版(适用于zabbix7及以上)

监控项&#xff1a; 触发器&#xff1a; 监控数据如下&#xff1a;

UE5 渲染管线 学习笔记

兰伯特 SSS为散射的意思 带Bias的可以根据距离自动切换mip的卷积值 而带Level的值mipmaps的定值 #define A8_SAMPLE_MASK .a 这样应该就很好理解了 这个只采样a通道 带Level的参考上面的 朝左上和右下进行模糊 带Bias参考上面 随机数 4D 3D 2D 1D

ArcGIS Pro 3.4新功能3:空间统计新特性,基于森林和增强分类与回归,过滤空间自相关

目录 应用 1&#xff1a;它是相关性还是托布勒第一定律&#xff1f; 应用 2&#xff1a;将空间带入非空间模型 结论 在 ArcGIS Pro 3.4 中&#xff0c;我们在新的空间组件实用程序&#xff08;Moran 特征向量&#xff09;工具集中发布了一个新工具 - 从字段过滤空间自相关。…