部署環境:windows server 2012 R2,服務器在AD域中html
參考網址:git
https://msdn.microsoft.com/zh-cn/magazine/jj219455(office.15).aspxgithub
http://www.cnblogs.com/yanweidie/p/4516164.htmlweb
1.安裝windows server 2012 R2,注意不要用預覽版,並安裝windows更新,重啓服務器windows
2.安裝.NET Framework 4.5.2瀏覽器
3.以管理員身份打開 Windows PowerShell 提示符,而後運行此命令示例來安裝必需的角色和服務,重啓服務器緩存
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
4.安裝Office Web Apps Server,通常爲iso文件,如:cn_office_web_apps_2013_x64_dvd_1133682.iso服務器
5.下載並安裝 Office Web Apps Server SP1,wacserversp2013-kb2880558-fullfile-x64-glb.exeapp
6.爲 Office Web Apps Server 安裝語言包,Microsoft 從這個地址下載,如:wacserverlanguagepack.exeui
7.爲服務器配置AD域,從計算機屬性頁面-計算機名稱、域和工做組設置中可設置。並添加一個AD域帳戶,賦予服務器管理員權限
8.用該帳戶登陸服務器,以管理員身份打開 Windows PowerShell 提示符,使用 New-OfficeWebAppsFarm 命令建立一個包含一臺服務器的新 Office Web Apps Server 場,如如下示例中所示
New-OfficeWebAppsFarm -InternalURL "http://servername" -ExternalUrl "https://server.external.contoso.com" -AllowHttp -EditingEnabled
–InternalURL 內部訪問地址,通常是http://機器名.AD域控地址
–AllowHttp 是否容許http訪問
–EditingEnabled 在 Office Web Apps 中啓用編輯(若是它與 SharePoint 2013 一塊兒使用)。Lync Server 2013 或 Exchange Server 2013 不使用此參數,由於這些主機不支持編輯。
更多參數使用請查看:https://msdn.microsoft.com/zh-cn/magazine/jj219436.aspx
若是沒有報錯,訪問地址 http://機器名.AD域控地址//hosting/discovery,可看到wopi-discovery文檔
第二部分 使用WOPI實現文檔在線預覽和編輯(編輯支持docx,xlsx,pptx,不支持doc,xls,ppt;在線查看上述都支持)
1.代碼地址:https://github.com/marx-yu/WopiHost 有兩個分支,主分支對應的是 Office online 2016,release_0.8_for_owa2013對應office web app server 2013,咱們使用此分支的代碼
2.切換到此分支後,須要另外引用Microsoft.CobaltCore.dll。在部署office web app server的服務器上可搜索到該dll。
3.因爲我是用虛擬機部署部署office web app server,須要修改CobaltServer.cs文件的裏的地址,使得虛擬機能夠訪問該地址。若是端口號被佔用,也須要修改。
public CobaltServer(string docsPath, int port = 8082) { m_docsPath = docsPath; m_port = port; } public void Start() { m_listener = new HttpListener(); m_listener.Prefixes.Add(String.Format("http://10.204.13.78:{0}/wopi/", m_port)); m_listener.Start(); m_listener.BeginGetContext(ProcessRequest, m_listener); Console.WriteLine(@"WopiServer Started"); }
4.文件放置根目錄在Program.cs文件裏,能夠自行修改
5.運行程序,訪問地址,可查看word文檔test.docx,注意:test.docx必須在4所說的根目錄下,其餘更多url地址訪問參考wopi-discovery文檔
http://機器名.AD域控地址/wv/wordviewerframe.aspx?WOPISrc=http://10.204.13.78:8081/wopi/files/test.docx&access_token=06l%20hXK6zWTUi
注:
1.docx文件保存須要點擊保存按鈕,而xlsx文件不用。
2.docx文件打開編輯頁面存在緩存bug,即打開頁面後關閉,在本地用office修改文件,再次用瀏覽器打開編輯頁面,仍爲原來的頁面,office online server (查看 http://www.cnblogs.com/ldybyz/p/6645127.html)則不會有這個問題
6.office web app server的日誌記錄在 %programdata%\Microsoft\OfficeWebApps\Data\Logs\ULS\,須要服務器顯示隱藏文件夾和管理員權限,方便查看錯誤信息以便定位錯誤。
7.wopi相關文檔: https://wopi.readthedocs.io/en/latest/
其餘相關博客:
http://www.cnblogs.com/poissonnotes/p/3267190.html
其餘源碼示例:
https://code.msdn.microsoft.com/office/Building-an-Office-Web-f98650d6
https://github.com/thebitllc/WopiBasicEditor
https://github.com/Microsoft/Office-Online-Test-Tools-and-Documentation
https://github.com/oec2003/OWAEditorSample.git
office online server(office web app server升級版) 相關文檔:
https://technet.microsoft.com/zh-cn/library/jj219437(v=office.16).aspx
http://www.cnblogs.com/love007/p/6274910.html
其餘文章:
http://www.wictorwilen.se/Tags/Office%20Web%20Apps