1. 程式人生 > >部署onlyoffice(node.js版本)之野蠻施工法

部署onlyoffice(node.js版本)之野蠻施工法

OnlyOffice,線上的文件編輯工具,可以在瀏覽器上建立WORD,EXCEL,PPT,並且實現線上編輯功能。

第一步,使用docker安裝OnlyOffice/DocumentServer.

    sudo docker pull onlyoffice/documentserver
sudo docker run -i -t -d -p 9000:80 onlyoffice/documentserver   //docker的埠號是80,對映到本地9000

在這裡插入圖片描述

如果您是新手,可以把OnlyOffice/DocumentServer理解為OnlyOffice的後端,而前端,就是OnlyOffice/CommunityServer,執行CommunityServer,在瀏覽器上開啟,就能進入使用者登入頁面。由於CommunityServer內部檔案過多,因此本人並沒有配置原始碼中的IP.因此,進入CommunityServer頁面後無法實現檔案的線上編輯功能。如果您已經找到了正確配置CommunityServer的方法,請加我QQ:790940146.

接下來,進入OnlyOffice官網:https://api.onlyoffice.com/editors/basic
右邊欄點選:Integration examples,選擇node.js 版本。
在這裡插入圖片描述
下載完成解壓後,把資料夾開啟,找到 run 檔案,
在這裡插入圖片描述

點選執行,他的作用是下載node.js執行所需的依賴包。
下一步,進入config/default.json,port端自己指定一個埠,siteUrl後輸入你安裝documentServer的IP地址即埠號,舉個例子:如下圖,我的服務端的IP是192.168.10.171,documentServer在80埠,那麼我的siteUrl就是“http://192.168.10.171:80

”,port埠你自己決定。
在這裡插入圖片描述
這樣配置之後再執行會有如下問題:你在本機上傳或者建立檔案之後,別人在瀏覽器輸入你的IP地址埠號之後不能看見你所建立的檔案。原因如下:helpers/docManager.js中有一段程式碼

docManager.curUserHostAddress(userAddress)

他的作用在於給遠端使用者單獨建立一個資料夾,比如192.168.10.69訪問進來,就會建立一個單獨的資料夾
在這裡插入圖片描述
比如說訪客的IP是192.168.10.69,那麼你就會看到192.168.10.69下的檔案,看不到服務端資料夾下的檔案,因此,我們的工作是統一檔案的建立,訪問,和儲存路徑。我的方法如下:
在這裡插入圖片描述


把docManager.js下的路徑寫死(對應標題的“野蠻施工法”)

之後,進入office資料夾,

node bin/www

在這裡插入圖片描述
瀏覽器輸入IP:埠號,就能出線如下頁面:
在這裡插入圖片描述
但是!!!問題遠沒有結束!!!!
你用另一臺電腦輸入IP:埠號,選擇一個檔案,點選,會出現下載失敗的問題:
在這裡插入圖片描述
官網的說法是url錯誤:
在這裡插入圖片描述
接下來就是配置url的“野蠻施工法”
在這裡插入圖片描述
把url寫死,比如說服務端的IP地址是192.168.10.171,你就輸入

const hostAddress = "__ffff_192.168.10.171";

經過這些步驟之後,遠端使用者也能修改服務端的檔案了。