kkFileView是使用spring boot打造文件文档在线预览项目解决方案.

项目地址:https://gitee.com/kekingcn/file-online-preview

安装步骤:

1.下载对应的安装包,放到linux下

2.已经安装了jdk

3.从项目中下载,或者自己编译kkfileView-2.1.2.tar.gz

解压到任意目录,目中中的结构如下

4.进入启动目录,进行启动

cd kkFileView-2.1./bin
sh startup.sh

启动会调用,script文件夹下的install安装openoffice4。如果是内网无法下载的话,可以自己手工下载,并调整路径

例如,下面就是将下载地址指向了自己的地址。

自动下载安装包后,会建立/opt/openoffice4目录。openoffice的默认启动端口是8100,注意是否有冲突。

可以尝试访问http://ip:8012   查看初始界面了。

5.openoffice虽然安装了,但也可能因为某些原因启动不了,这样还是看到不到界面的。

所以先测试openoffice是否可用。

# 进入 openOffice 安装目录
cd /opt/openoffice4/program/
# 在本地开启 openOffice 服务,端口为 。
./soffice -headless -accept="socket,host=127.0.0.1,port=8100:urp;" -nofirststartwizard & #查看进程是否开启正确, 然后杀死这个进程 kill ? 以免程序起不来
ps -ef|grep soffice

如果不能正常启动,先安装libXext,然后再重试

centos7-64下载地址:http://mirror.centos.org/centos/7/os/x86_64/Packages/libXext-1.3.3-3.el7.x86_64.rpm

启动系统可以在此地址查找:https://pkgs.org/download/libXext.so.6

安装成功后,如果还启动不了,在安装图形界面

yum groupinstall "X Window System"

openoffice确认可以启动了,再回到kkFileView的bin目录下,执行startup.sh进行启动。

尝试访问http://ip:8012   查看初始界面,如果是内网的话会非常慢,因为有引用互联网的js文件。

6.访问测试

尝试访问http://ip:8012   查看初始界面

//要预览文件的访问地址
var url = 'http://127.0.0.1:8080/file/test.txt';
window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(url)); //多图片同时预览功能,多文件使用“|”字符隔开
var fileUrl =url1+"|"+"url2";
window.open('http://127.0.0.1:8012/picturesPreview?urls='+encodeURIComponent(fileUrl));

可以尝试测试一下,首先找一个可以通过web访问的word文件。例如自己做一个nginx将文件放进去。

http://172.24.4.69:9500/dev-common-soft/apache/openOffice/1.docx

将路径做url转码,就可以访问到对应的文件预览了。

以图片模式查看

http://172.24.4.75:8012/onlinePreview?url=http%3A%2F%2F172.24.4.69%3A9500%2Fdev-common-soft%2Fapache%2FopenOffice%2F2.docx

以pdf模式查看

http://172.24.4.75:8012/onlinePreview?url=http%3A%2F%2F172.24.4.69%3A9500%2Fdev-common-soft%2Fapache%2FopenOffice%2F2.docx&officePreviewType=pdf

7.解决乱码

解决:

a.查看当前语言包: locale -a|grep zh_CN 如果 如果没有zh_CN.utf8,就安装语言包,如果存在可以直接设置

b.安装简体中文语言包: `yum install kde-l10n-Chinese`

c.设置为中文: 临时修改,重启服务器之后就会还原之前的设置:`LANG="zh_CN.UTF-8"` #修改为中文

d.永久修改
1) `vi /etc/locale.conf` 加下面内容到第一行,设置中文 `LANG=zh_CN.UTF8` 然后 source /etc/locale.conf
2) `localectl set-locale LANG=zh_CN.UTF8`
其它:修改时区为亚洲上海 `ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime`

e:添加字体到 /usr/share/fonts 里面
**windows系统的字体库在 C:\Windows\Fonts 下面,需要的字体拷贝到linux即可**

f:建立字体缓存
进入字体存放目录: `cd /usr/share/fonts`;

yum install mkfontscale
yum install fontconfig mkfontscale
mkfontdir
fc-cache

fc-list PS:查看系统字体
fc-list :lang=zh PS:查看系统中文字体

g: 重启计算机(好像需要重启计算机才会生效)
`reboot`

h: 如果重启后没有生效,把/usr/share/fonts 下面的字体文件改为可执行 `chmod 755 *.ttf`
然后再`mkfontscale`,`mkfontdir`, #fc-cahce
`reboot`重启

kkFileView在centos7上安装的更多相关文章

  1. 在centos7上安装Jenkins

    在centos7上安装Jenkins 安装 添加yum repos,然后安装 sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins ...

  2. 在 CentOS7 上安装 zookeeper-3.4.9 服务

    在 CentOS7 上安装 zookeeper-3.4.9 服务 1.创建 /usr/local/services/zookeeper 文件夹: mkdir -p /usr/local/service ...

  3. 在 CentOS7 上安装 MongoDB

    在 CentOS7 上安装 MongoDB 1 通过 SecureCRT 连接至 CentOS7 服务器: 2 进入到 /usr/local/ 目录: cd /usr/local 3 在当前目录下创建 ...

  4. 在 CentOS7 上安装 MySQL5.7

    在 CentOS7 上安装 MySQL5.7 1 通过 SecureCRT 连接到阿里云 CentOS7 服务器: 2 进入到目录 /usr/local/ 中: cd /usr/local/ 3 创建 ...

  5. 在 CentOS7 上安装 Tomcat9

    在 CentOS7 上安装 Tomcat9 1 通过 SecureCRT 连接到阿里云 CentOS7 服务器: 2 进入到目录 /usr/local/ 中: cd /usr/local/ 3 创建目 ...

  6. 在CentOS7上安装JDK1.8

    在CentOS7上安装JDK1.8 1 通过 SecureCRT 连接到阿里云 CentOS7 服务器: 2 进入到目录 /usr/local/ 中: cd /usr/local/ 3 创建目录 to ...

  7. 在Centos7上安装漏洞扫描软件Nessus

    本文摘要:简单叙述了在Centos7上安装Nessus扫描器的过程   Nessus 是目前全世界最多人使用的系统漏洞扫描与分析软件,Nessus的用户界面是基于Web界面来访问Nessus漏洞扫描器 ...

  8. 如何在centos7上安装源码包

    在我们使用linux的过程中,有很多程序是通过红帽官网给的系统中安装的,但是一般来说,系统更新的速度比较慢,如果这个时候我们又想用最新版的该怎么办呢?总不能一直等系统升级吧╮(╯﹏╰)╭所以,我们可以 ...

  9. centos7上安装0penStack

    centos7上安装0penStack author:headsen chen 2017-10-09  20:41:54 个人原创,欢迎转载,请注明作者,出去,否则依法追究责任 一,准备工作(配置ip ...

随机推荐

  1. 笔记:TCP/IP基础知识

    TCP/IP是指利用IP进行通信时必须用到的协议群的统称. 互联网层(网络层) IP IP是跨越网络传送数据包,使整个网络都能收到数据的协议.IP地址在发送数据的时候作为主机的标识. ICMP 用来诊 ...

  2. JS window对象 计时器setTimeout() setTimeout()计时器,在载入后延迟指定时间后,去执行一次表达式,仅执行一次。 语法: setTimeout(代码,延迟时间);

    计时器setTimeout() setTimeout()计时器,在载入后延迟指定时间后,去执行一次表达式,仅执行一次. 语法: setTimeout(代码,延迟时间); 参数说明: 1. 要调用的函数 ...

  3. Spring框架4大原则和主要功能

    Spring框架4大原则: 使用POJO进行轻量级和最小侵入式开发 POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJ ...

  4. vue footer点击变色

    <header class="tab_nav"> <div v-for="(item,index) in tabNav" @click=&qu ...

  5. idea-----idea中“cannot resolve symbol servlet”的解决

    原文章链接: 传送器>>>>>>>>>>>>>>>>. 第一次使用IntelliJ IDEA时我遇到了& ...

  6. leetcood学习笔记-141-环形列表

    题目描述: 方法一: class Solution(object): def hasCycle(self, head): """ :type head: ListNode ...

  7. Batch - attrib 命令

    原文地址:CMD中使用attrib命令设置文件只读.隐藏属性详解 本文介绍一个cmd下的一个attrib.exe的小程序,它可以用来设置文件的属性.我们知道文件的属性有只读.隐藏.系统.存档和无内容索 ...

  8. Ruby 安装 – Unix

    Ruby 安装 - Unix 下面列出了在 Unix 机器上安装 Ruby 的步骤. 注意:在安装之前,请确保您有 root 权限. 下载最新版的 Ruby 压缩文件.请点击这里下载. 下载 Ruby ...

  9. css导行下拉动画

    <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" ...

  10. hive shell参数

    Hive Shell参数 1.Hive命令行 语法结构 hive [-hiveconf x=y]* [<-i filename>]* [<-f filename>|<-e ...