最近在折騰線上編輯,研究了下Wopi,下麵粘貼出自己Office Online Server環境搭建與部署

来源:https://www.cnblogs.com/yazid/archive/2019/07/08/11150673.html
-Advertisement-
Play Games

需要兩台伺服器,一臺域控制器,一臺部署Office Online Server https://docs.microsoft.com/zh-cn/officeonlineserver/office-online-server 概述 使用office online功能,首先需要的是2台主機,其中一臺是 ...


至少需要兩台伺服器,一臺域控制器,一臺部署Office Online Server

https://docs.microsoft.com/zh-cn/officeonlineserver/office-online-server

 概述

使用office online功能,首先需要的是2台主機,其中一臺是要安裝office Online服務,另一臺主機是需要作為域控制器,由這個主機專門負責管理office online主機

WOPI Server -> 域控的主機

WOPI Client -> 安裝office online的主機

Office Online Server 支持的操作系統

Ÿ 64 位版本的 Windows Server 2012 R2

Ÿ 64 位版本的 Windows Server 2016(要求 Office Online Server 2017 年 4 月或更高版本)

 

Office Online Server安裝時要註意的幾點事項

Ÿ 請勿在運行 Office Online Server 的伺服器上安裝任何其他伺服器應用程式。包括 Exchange Server、SharePoint Server、Skype for Business Server 和 SQL Server。如果伺服器不足,則可以在這些伺服器的其中一臺的虛擬機上運行 Office Online Server。

Ÿ 不要在埠 80、443 或 809 上安裝依賴 Web 伺服器 (IIS) 角色的任何服務或角色,因為 Office Online Server 會定期刪除這些埠上的 Web 應用程式。

Ÿ 不要安裝任何版本的 Office。如果已經安裝,在安裝 Office Online Server 之前必須將其卸載。

Ÿ 不要在域控制器上安裝 Office Online Server。它不會在包含 Active Directory 域服務 (AD DS) 的伺服器上運行

 

步驟一:配置域控伺服器【域控主機】

配置管理器 ->添加角色和功能 -> 選擇Active Directory域服務 -> 安裝等待完成,不要關閉 -> 點擊"將此伺服器提升為域控制器" -> 選擇"添加新林" -> 輸入根功能變數名稱如oos.com -> 輸入密碼 -> 安裝,自動重啟

先決條件檢查這一頁,出現了問題,因為賬號沒有設置密碼

在cmd視窗設置一下administrator 的用戶名和密碼並使用密碼

net user administrator "Abc123"

net user administrator /passwordreq:yes

 

 

 

 

 

 

步驟二:Office Online Server安裝角色和服務【OfficeOnline主機】

以管理員身份打開 Microsoft PowerShell 提示符,然後運行此命令示例來安裝必需的角色和服務。

Windows Server 2012 R2:

Add-WindowsFeature Web-Server,Web-Mgmt-Tools,Web-Mgmt-Console,Web-WebServer,Web-Common-Http,Web-Default-Doc,Web-Static-Content,Web-Performance,Web-Stat-Compression,Web-Dyn-Compression,Web-Security,Web-Filtering,Web-Windows-Auth,Web-App-Dev,Web-Net-Ext45,Web-Asp-Net45,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Includes,InkandHandwritingServices,NET-Framework-Features,NET-Framework-Core,NET-HTTP-Activation,NET-Non-HTTP-Activ,NET-WCF-HTTP-Activation45,Windows-Identity-Foundation,Server-Media-Foundation

Windows Server 2016:

Add-WindowsFeature Web-Server,Web-Mgmt-Tools,Web-Mgmt-Console,Web-WebServer,Web-Common-Http,Web-Default-Doc,Web-Static-Content,Web-Performance,Web-Stat-Compression,Web-Dyn-Compression,Web-Security,Web-Filtering,Web-Windows-Auth,Web-App-Dev,Web-Net-Ext45,Web-Asp-Net45,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Includes,NET-Framework-Features,NET-Framework-45-Features,NET-Framework-Core,NET-Framework-45-Core,NET-HTTP-Activation,NET-Non-HTTP-Activ,NET-WCF-HTTP-Activation45,Windows-Identity-Foundation,Server-Media-Foundation

Office Online Server安裝所需依賴以下軟體包:

.NET Framework 4.5.2

Visual C++ Redistributable Packages for Visual Studio 2013

Visual C++ Redistributable for Visual Studio 2015

Microsoft.IdentityModel.Extention.dll - MicrosoftIdentityExtensions-64.msi

Office Online Server程式

Office Online Server語言包

執行上面操作後依次安裝Office Online Server程式與語言包

 

步驟三:域控伺服器關聯配置【OfficeOnline主機設置加入域】

檢查一下兩台主機的IP:

域控制器主機:172.16.159.134

OfficeOnline主機:172.16.159.135

1、在OfficeOnline主機中打開網路屬性,找到ipv4的配置,配置DNS為"域控制器的IP"

 

2、把OfficeOnline伺服器加入到域伺服器的域中,如下圖操作,接下來選擇隸屬於"域",設置域就是之前安裝域控制主機的時候設置的是yazid.com,這裡直接填入,繼續回彈出輸入賬號密碼,這裡輸入域控制器的用戶名和密碼即可

 

3、在域控伺服器把OfficeOnline主機添加進管理中:打開域控伺服器 -> 伺服器管理器 -> 管理 -> 添加伺服器 -> 立即查找 -> 選中OfficeOnline主機添加 -> 點擊左側的所有伺服器,顯示聯機即可

 

 

步驟四:部署使用 HTTP 的單伺服器Office Online Server Farm

(如果 Microsoft PowerShell 在您運行時無法識別 New-OfficeWebAppsFarm cmdlet,您可能需要導入 OfficeWebApps 模塊。請使用此命令:> Import-Module -Name OfficeWebApps)

 第 1 步:創建 Office Online Server 場

使用 New-OfficeWebAppsFarm 命令創建一個包含一臺伺服器的新 Office Online Server 場,如以下示例中所示

命令

New-OfficeWebAppsFarm -InternalURL "http://WIN-EMU743VLII3.yazid.com/" –ExternalUrl "http://172.16.159.135/" -AllowHttp:$true -EditingEnabled:$true -ClipartEnabled:$true

Set-OfficeWebAppsFarm –ExternalUrl "http://172.16.159.135/" -AllowHttp:$true -EditingEnabled:$true -ClipartEnabled:$true

參數

-InternalURL 是運行 Office Online Server 的伺服器名稱,例如 http://servername。

-AllowHttp 配置要使用 HTTP 的場。

-EditingEnabled 在 Office Online 中啟用編輯(如果它與 SharePoint Server 2016 一起使用)。Skype for Business Server 2015 或 Exchange Server 不使用此參數,因為這些主機不支持編輯。

Get-OfficeWebAppsFarm 返回當前伺服器所屬的 OfficeWebAppsFarm 對象的詳細信息

New-OfficeWebAppsFarm 在本地電腦上創建新 Office Online Server 場

Set-OfficeWebAppsFarm 配置現有 Office Online Server 場的設置

Remove-OfficeWebAppsMachine 從 Office Online Server 場中刪除現有伺服器(刪除Farm)

註意:在執行創建服務場時可能出現提示用戶名或者密碼不正確,這時需要把兩台伺服器密碼改成相同,並且重啟之後即可

 

步驟 2:驗證是否成功創建 Office Online Server 場

在創建伺服器場後,將在 Microsoft PowerShell 提示符中顯示有關伺服器場的詳細信息。若要驗證是否正確安裝並配置了 Office Online Server,請使用 Web 瀏覽器訪問 Office Online Server 發現 URL是您在配置 Office Online Server 伺服器場時指定的 InternalUrl 參數,後跟 /hosting/discovery,例如:http://servername/hosting/discovery,如果 Office Online Server 按預期運行,您應該在 Web 瀏覽器中看到 Web 應用程式開放平臺介面 (WOPI) 協議發現 XML 文件。

 

步驟 3:配置 Secure Store 訪問(可選)

如果計劃使用 HTTP 環境中 SharePoint 伺服器的 Secure Store Service,則需要設置可啟用此服務的參數。(如果未計劃將 SharePoint 伺服器中的 Secure Store 與 Excel Online 一起使用,則可跳過此步驟)

當 Office Online Server 試圖刷新工作簿或存儲在 HTTP 路徑中的 ODC 文件的數據時,如果尚未配置 Office Online Server 以允許通過 HTTP 的 Secure Store 連接,則數據刷新將失敗。

使用 Set-OfficeWebAppsFarm cmdlet 配置通過 HTTP 的 Secure Store 設置:

Set-OfficeWebAppsFarm -AllowHttpSecureStoreConnections:$true

請記住將通過 HTTP 以明文形式傳送工作簿的內容或 ODC 文件。數據連接工作簿和 ODC 文件包含資料庫連接信息,並可以包含密碼。

 

步驟 4:配置主機

伺服器場現在已經可以通過 HTTP 為主機提供 Office Online 功能。有關如何配置主機的詳細信息,請查閱以下文章。

配置 SharePoint Server 2016 的 Office Online Server

Office Online Server integration with Exchange(Office Online Server 與 Exchange 的集成)

 

步驟五:部署Wopi項目

使用說明:https://www.netnr.com/doc/code/4964095842855914510

wopi相關文檔:https://wopi.readthedocs.io/en/latest/


可以參照以下wopi代碼:

https://github.com/netnr/WopiHost

https://github.com/marx-yu/WopiHost

https://github.com/OfficeDev/PnP-WOPI

https://github.com/thebitllc/WopiBasicEditor

https://code.msdn.microsoft.com/office/Building-an-Office-Web-f98650d6

https://github.com/Microsoft/Office-Online-Test-Tools-and-Documentation

https://github.com/oec2003/OWAEditorSample.git

 

 

其實官方文檔還是比較全面的,但是很多博客裡面介紹的通俗易懂,根據個人喜好吧!

有些內容轉載於其他博客大佬,記錄下給其他網友參考下吧…

 

更多內容請關註公眾號…


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文翻譯自Hans Kilian的文章 Creating a containerized .NET core application in less than 10 lines of code https://medium.com/@hkkilian/creating-a-containerized ...
  • 題目描述 最近事情比較少,空閑比較多,就刷刷劍指Offer上的經典題。把一個數組最開始的若幹個元素搬到數組的末尾,我們稱之為數組的旋轉。 輸入一個非減排序的數組的一個旋轉,輸出旋轉數組的最小元素。 例如數組{3,4,5,1,2}為{1,2,3,4,5}的一個旋轉,該數組的最小值為1。 NOTE:給出 ...
  • 技術涉及:html+Jquery 不多說直接上圖:由於是 .netcore MVC Web應用對於大家來說不一致的話可供參考哦😄!!! _Layout佈局文件: View 中的 MainHead視圖腳本:(個人需求在MainHead視圖裡面添加兩個按鈕控制MainDirection的大小) Con ...
  • 效果如圖: js代碼: $("#tdg").datagrid({ width: 200, url: "/Laboratory/ShipmentRegister/LoadData", queryParams: { auvp: 'r', condition: " and State='0' " }, s ...
  • 在View中完成數據篩選,無需改變數據源的內容,這樣就不必擔心在其它地方也使用這個數據源。 從路由事件 TextBoxBase.TextChanged 中獲取輸入的文本,並設置視圖的過濾器就可以了。 CollectionViewSource.GetDefaultView 方法是返回一個 IColle ...
  • 小白開學Asp.Net Core《五》 —— 使用.Net Core MVC Filter 一、簡介 今天在項目(https://github.com/AjuPrince/Aju.Carefree)做登陸許可權時,用到了Filter,現將Filer的使用做以下記錄。 二、Filter 簡介 Filte ...
  • 概述: 1、構造函數和析構函數是類中比較特殊的兩種成員函數,分別用來對對象進行初始化和回收對象資源。 構造函數—————對象初始化!!! 析構函數—————回收對象資源!! 2、對象的生命周期從構造函數開始,從析構函數結束。如果一個類含有構造函數,在實例化該類的對象時就會被調用。如果含有析構函數,則 ...
  • 服務端代碼[控制台示例] Socket 相關類 客戶端連接[網頁測試] <!DOCTYPE html WebSockets客戶端示例 var webSocket; function connect() { try { var readyState = new Array("正在連接","已建立連接" ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...