onlyoffice分布式部署報錯問題解決
編輯歷史:
2018.7.3 小賴 文檔初始化
問題描述:客戶要求部署分布式環(huán)境,啟動兩個onlyoffice服務(wù),請求隨機轉(zhuǎn)發(fā)到其中一臺服務(wù)器上拨黔;發(fā)現(xiàn)時有時無的錯誤徽曲,office文件打開失敗。
思路:1.配置的config文件后雁比,onlyoffice服務(wù)會自行加載一些文件非洲;2.產(chǎn)生的原因是請求讓服務(wù)器A去下載a.docx文件,下載完后存儲在/var/lib/onlyoffice的cache目錄下鸭限,并把下載的結(jié)果發(fā)給前端,這時前端拿到a.docx文件的下載信息了两踏,請求服務(wù)器B將下載好的文件以bin的形式傳給前端梦染,但是服務(wù)器B上并沒有這個文件,導(dǎo)致請求報錯,文件加載不出來。
解決方案:將兩個容器中的/var/lib/onlyoffice目錄掛載到一個目錄下碱呼,保證文件的一致性馋袜。—— 1.使用docker啟動并且兩個服務(wù)在一臺服務(wù)器上炭分,可以使用docker的-v命令將容器中的 /var/lib/onlyoffice 目錄映射到服務(wù)器的同一個目錄下即可解決桃焕。 2.使用兩臺linux服務(wù)器啟動的服務(wù),使用nfs工具同步兩個onlyoffice服務(wù)上的 /var/lib/onlyoffice 目錄呀忧。
注意:
- /var/lib/onlyoffice存儲下載的office文件师痕;
- 下載的office文件會轉(zhuǎn)化成onlyoffice自行設(shè)置的格式;
- /var/lib/onlyoffice目錄下的文件雖然是緩存而账,但是不會自動清理胰坟,可以使用linux定時任務(wù),定時刪除緩存文件泞辐;
- /var/lib/onlyoffice目錄的權(quán)限是755笔横,所屬用戶是onlyoffice;如果任何操作更改了所屬用戶咐吼,就會導(dǎo)致緩存文件寫入失敗而報錯吹缔。——解決方案:
chmod -R 777 /var/lib/onlyoffice
或者
chown -R onlyoffice:onlyoffice /var/lib/onlyoffice