kkFlileView是一個java開源的文件預覽項目。之前我要做一個關於各類office文檔在線預覽的功能,對我這種還是小白的家伙,要做一個預覽難度確實很大,不過好在在網上發現了這款kkFileView的開源的springboot項目,幫助我解決這個大問題。kkFileVie支持doc、docx、ppt、pptx、xls、xlsx、zip、rar、mp4、mp3以及眾多類文本如txt、html、xml、java、properties、sql、js、md、json、conf、ini、vue、php、py、bat、gitignore等文件在線預覽,功能非常強大,不僅滿足了我的要求,還提供功能的功能,真的是要大贊一番!
官方在線體驗(可以看一下效果)
接下來說說關於kkFileView在服務器上面的部署
從 碼雲發行版本 下載最新版發行包
二、在服務器上預裝環境
(1)環境要求
-
Java: 1.8+
-
OpenOffice或LiberOffice(Windows下已內置,CentOS或Ubuntu下會自動下載安裝,MacOS下需要自行安裝)
(我這邊是CentOS的環境)
(2)環境配置
在服務器運行如下代碼:
yum install -y libXext.x86_64
yum groupinstall -y "X Window System"
三、解壓壓縮包
解壓下載下來的zip壓縮包(可以本地解壓),將其放到服務器目錄下,打開文件夾的bin目錄,運行startup.sh腳本。
運行語句
sh startup.sh
瀏覽器訪問服務器8012端口(“http://+”服務器公網IP+“:8012 ”)即可看到項目演示用首頁,如果沒有注意服務器上的8012端口是否開放。如果沒有,去安全組開啟?
(我的 “Navicat連接服務器數據庫” 最后面一段有介紹如何去安全組開啟想要的端口)
四、項目接入使用
當您的項目內需要預覽文件時,只需要調用瀏覽器打開本項目的預覽接口,並傳入須要預覽文件的url,示例如下:
var url = 'http://127.0.0.1:8080/file/test.txt'; //要預覽文件的訪問地址
window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(previewUrl));
五、預覽亂碼
字體問題
大部分Linux系統上並沒有預裝中文字體或字體不全,需要把常用字體拷貝到Linux服務器上,具體操作如下: 將Windows下的C:\Windows\Fonts 目錄下的文件完整拷貝到Linux下的 /usr/share/fonts目錄。然后依次執行mkfontscale 、mkfontdir 、fc-cache使字體生效(有些字體需要單獨上傳,批量上傳往往會自動被跳過)
(如果提示 mkfontscale: command not found,需自行安裝 # yum install mkfontscale )
(如果提示 fc-cache: command not found,則需要安裝# yum install fontconfig )
安裝完成后,重啟服務器
reboot
(我的“Linux添加字體”那篇有詳細的流程介紹)
編碼問題
生成html網頁也是用的服務器操作系統默認編碼(java系統屬性:sun.jnu.encoding),比如用瀏覽器用手動更改編碼格式為utf-8或gbk打開沒有問題,但是用瀏覽器默認編碼就有問題,此時可調整系統配置文件中的配置項converted.file.charset可解決此類亂碼問題


官方wiki文檔:https://gitee.com/kekingcn/file-online-preview/wikis/pages?sort_id=1444366&doc_id=106093
官方介紹文檔:
