0. Office Web Apps简介

  Office Web Apps简介

  • 关于 Office Web Apps Server

Office Web Apps Server 是一种 Office 服务器产品,它为 Office 文件提供基于浏览器的文件查看和编辑服务。 Office Web Apps Server 适用于支持 WOPI 的产品和服务, 即 Web 应用程序开放平台接口协议。 这些产品 (称为主机) 包括 SharePoint 2013 和 Lync Server 2013。 Office Web Apps Server 服务器场可以向多个本地主机提供 Office 服务, 您可以在组织的需求增长时将服务器场从一台服务器扩展到多台服务器。 虽然 Office Web Apps Server 需要运行无其他服务器应用程序的专用服务器, 但您可以改为在虚拟机实例上安装 Office Web Apps Server。

                                        

官方文档:https://docs.microsoft.com/zh-cn/webappsserver/office-web-apps-server

二、Office Web Apps Server 的软件、硬件和配置要求

您可以将 Office Web Apps Server 安装为单个服务器 Office Web Apps Server 场, 也可以将其作为多服务器、负载平衡的 Office Web Apps Server 服务器场安装。 您可以使用物理服务器或虚拟机实例, 但不能在 Office Web Apps Server 所在的同一台服务器上安装其他服务器应用程序 (如 SharePoint 2013 或 SQL Server)。

在包含实际用户数据的环境中,我们始终建议您使用 HTTPS,您必须获取 HTTPS 证书。 如果在服务器场中使用多台服务器,您将必须配置硬件或软件负载平衡解决方案。 您可以在以下各节中了解有关这些方案的详细信息。

三、Office Web Apps Server 支持的操作系统

您可以在以下操作系统上运行 Office Web Apps Server:

  • 安装了Windows server 2008 r2 X64 Edition 更新的 windows Server 2008 R2 Service Pack 1 (SP1) Standard、Enterprise 或 Datacenter 的64位版本
  • Windows Server 2012 Standard 或 Datacenter 的64位版本 (推荐)
  • 64位版本的 Windows Server 2012 R2。 若要使用此操作系统,则必须使用 Office Web Apps Server Service Pack 1 (SP1)。

四、Office Web Apps Server 的域要求

Office Web Apps Server 服务器场中的所有服务器都必须是域的一部分。 它们可以在同一个域(推荐)中或位于同一个林中的不同域中。 但是, 如果您尝试在域控制器上安装 Office Web Apps Server, 则该服务器将不起作用。

五、Office Web Apps Server 需要的服务器角色、服务及其他软件

首先, 以下是部署 Office Web Apps Server 时不应执行的一些操作。

  • 请勿在运行 Office Web Apps server 的服务器上安装任何其他服务器应用程序。 这包括 Exchange Server、SharePoint Server、Lync Server 和 SQL Server。 如果你的服务器不足, 请考虑在你拥有的一台服务器上的虚拟机实例中运行 Office Web Apps Server。
  • 不要在端口80、443或809上安装依赖 Web 服务器 (IIS) 角色的任何服务或角色, 因为 Office Web Apps Server 会定期删除这些端口上的 web 应用程序。
  • 不要安装任何版本的 Office。 如果已安装, 则需要先卸载它, 然后再安装 Office Web Apps Server。
  • 不要在域控制器上安装 Office Web Apps Server。 它不会在包含 Active Directory 域服务 (AD DS) 的服务器上运行。

Office Web Apps Server 需要的下载、服务器角色和功能

   

下载、服务器角色或功能

如果在 Windows Server 2008 R2 上安装

如果在 Windows Server 2012 上安装

如果在 Windows Server 2012 R2 上安装

下载:Office Web Apps Server

Office Web Apps Server

Office Web Apps Server

Office Web Apps Server

下载:Office Web Apps Server SP1

建议

建议

Office Web Apps Server SP1

下载:.NET Framework 的正确版本

.NET Framework 4.5

已安装 .NET framework 4.5

.NET Framework 4.5.2

下载:Windows Server 2008 R2 x64 Edition 更新

Windows Server 2008 R2 x64 Edition 更新

不适用

不适用

下载:Windows PowerShell 3.0

Windows PowerShell 3.0

已安装

已安装

服务器角色:Web 服务器 (IIS)

以下是 Web 服务器 (IIS) 服务器角色所需的最少角色服务。

常见的 HTTP 功能

  • 静态内容
  • 默认文档

应用程序开发

  • ASP.NET
  • .NET 扩展性
  • ISAPI 扩展
  • ISAPI 筛选器
  • 服务器端包括

安全性

  • Windows 身份验证
  • 请求筛选

管理工具

  • IIS 管理控制台

推荐以下选项,但它们不是必需的:

性能

  • 静态内容压缩
  • 动态内容压缩

以下是 Web 服务器 (IIS) 服务器角色所需的最少角色服务。

管理工具

  • IIS 管理控制台

Web 服务器

  • 常见的 HTTP 功能
  • 默认文档
  • 静态内容

安全性

  • 请求筛选
  • Windows 身份验证

应用程序开发

  • .NET Extensibility 4.5
  • ASP.NET 4.5
  • ISAPI 扩展
  • ISAPI 筛选器
  • 服务器端包括

推荐以下服务,但它们不是必需的:

性能

  • 静态内容压缩
  • 动态内容压缩

以下是 Web 服务器 (IIS) 服务器角色所需的最少角色服务。

管理工具

  • IIS 管理控制台

Web 服务器

  • 常见的 HTTP 功能
  • 默认文档
  • 静态内容

安全性

  • 请求筛选
  • Windows 身份验证

应用程序开发

  • .NET Extensibility 4.5
  • ASP.NET 4.5
  • ISAPI 扩展
  • ISAPI 筛选器
  • 服务器端包括

推荐以下服务,但它们不是必需的:

性能

  • 静态内容压缩
  • 动态内容压缩

功能:墨迹和手写服务

墨迹和手写服务

  • 墨迹支持

墨迹和手写服务

  • 墨迹支持不是必需的。

墨迹和手写服务

  • 墨迹支持不是必需的。

 

六、Office Web Apps Server 的防火墙要求

防火墙可能会阻止 web 浏览器、运行 Office Web Apps Server 的服务器和运行 SharePoint 2013 的服务器之间的通信, 从而导致出现问题。 当服务器在网络的不同部分时,这些问题可能会变得更复杂。

确保运行 Office Web Apps Server 或负载平衡器的服务器上的防火墙不会阻止以下端口:

  1. 用于 HTTPS 流量的端口 443
  2. 用于 HTTP 流量的端口 80
  3. 端口809用于运行 Office Web Apps Server 的服务器之间的专用通信 (如果您正在设置多服务器场)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
版本修改记录: V2.2.0.2修改: 修改了HttpPost相对路径的一些问题。 V2.2.0.0增加: [id(0x00010041), helpstring("Get Rev Index")] HRESULT GetRevCount( [out,retval] long * pbool); [id(0x00010042), helpstring("Get Rev Index Info")] HRESULT GetRevInfo([in] long lIndex, [in] long lType, [out,retval] BSTR* pbool); [id(0x00010043), helpstring("Set Doc Prop")] HRESULT SetValue([in] BSTR strValue, [in] BSTR strName, [out,retval] long* pbool); [id(0x00010044), helpstring("Set Doc Variable")] HRESULT SetDocVariable([in] BSTR strVarName, [in] BSTR strValue,[in] long lOpt, [out,retval] long* pbool); [id(0x00010045), helpstring("Save page To Doc")] HRESULT SetPageAs([in] BSTR strLocalFile, [in] long lPageNum, [in] long lType,[out,retval] long* pbool); ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- LoadDso.js var s = "" s += "" s += "" document.write(s) ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- 接口文档: /* 1.新建 */ //新建Word document.all.FramerControl1.CreateNew("Word.Document"); //新建Excel document.all.FramerControl1.CreateNew("Excel.Sheet"); /* 2.打开文件 */ //打开制定的本地文件 document.all.FramerControl1.Open("C:\\TestBook.xls"); //制定用Word来打开c:\plain.txt文件 document.all.FramerControl1.Open("C:\\Plain.txt",false, "Word.Document"); //打开服务器的文件 document.all.FramerControl1.Open "https://secureserver/test/mytest.asp?id=123",true, "Excel.Sheet", "MyUserAccount", "MyPassword"); //打开服务器的文件 document.all.FramerControl1.Open("http://localhost/1.doc", true); /* 3.保存文件 */ //到本地 document.all.FramerControl1.Save("c:\\1.doc",true); //服务器 /*增加Http协议Post上传接口,可以Post一个动态页面(jsp,asp,php...),由动态页面负责解析数据 bool HttpInit(); bool HttpAddPostString(BSTR strName, BSTR strValue); bool HttpAddPostCurrFile(BSTR strFileID, BSTR strFileName); BSTR HttpPost(BSTR bstr); */ //初始化Http引擎 document.all.FramerControl1.HttpInit(); //增加Post变量 document.all.FramerControl1.HttpAddPostString("RecordID","20060102200"); document.all.FramerControl1.HttpAddPostString("UserID","李局长"); //上传打开的文件 document.all.FramerControl1.HttpAddPostCurrFile("FileData", "文档名.doc"); //执行上传动作 document.all.FramerControl1.HttpPost("http://xxxx.com/uploadfile.asp"); /* 4.修订留痕 */ //进入留痕状态 document.all.FramerControl1.SetTrackRevisions(1); //进入非留痕状态 document.all.FramerControl1.SetTrackRevisions(0); //接受当前修订 document.all.FramerControl1.SetTrackRevisions(4); /* 5.设置当前用户 */ document.all.FramerControl1.SetCurrUserName("张三"); /* 6.设置当前时间(笔迹留痕会显示("Like 2006:02:07 11:11:11") */ document.all.FramerControl1.SetCurrTime("2006:02:07 11:11:11"); /* 7.设置和创建书签,此功能比较强大,设置书签数据、添加书签和添加红头文件就靠他了 SetFieldValue(BSTR strFieldName, BSTR strValue, BSTR strCmdOrSheetName) strFieldName:书签名 strValue:要设置的值 strCmdOrSheetName: 命令 ::ADDMARK:: 添加BookMark ::DELMARK:: 删除这个BookMark ::GETMARK:: 定位到这个BookMark ::FILE:: 插入的是文件 ::JPG:: 插入的是图片 一般来说:WORD中书签是做好的,可以通过此接口把外界数据设置进书签中去。 */ //在当前WORD位置插入标签,标签名为"book1",数值为"test" document.all.FramerControl1.SetFieldValue("book1","test","::ADDMARK::"); //设置书签"Time",数值为"2006-03-16 22:22:22" document.all.FramerControl1.SetFieldValue("Time","2006-03-16 22:22:22",""); //在书签位置"hongtou",插入红头文件"http://222.222.222.222/hongtou1.doc" 这样,红头就自动插进去了 document.all.FramerControl1.SetFieldValue("hongtou","http://222.222.222.222/hongtou1.doc","::FILE::"); /* 8.设置菜单显示情况 BOOL SetMenuDisplay(long lMenuFlag) lMenuFlag为以下数值的组合 #define MNU_NEW 0x01 #define MNU_OPEN 0x02 #define MNU_CLOSE 0x04 #define MNU_SAVE 0x08 #define MNU_SAVEAS 0x16 #define MNU_PGSETUP 0x64 #define MNU_PRINT 0x256 #define MNU_PROPS 0x32 #define MNU_PRINTPV 0x126 */ //只有“新建”菜单可用 document.all.FramerControl1..SetMenuDisplay(1); //只有“打开”菜单可用 document.all.FramerControl1.SetMenuDisplay(2); //只有“打开”和“新建”菜单可用 document.all.FramerControl1.SetMenuDisplay(3); /* 9.保护文档和解保护文档 lProOrUn:1:保护文档;0:解除保护 lProType: wdNoProtection = -1, wdAllowOnlyRevisions = 0, wdAllowOnlyComments = 1, wdAllowOnlyFormFields = 2 strProPWD:密码 */ //完全保护文档,密码为"pwd" document.all.FramerControl1.ProtectDoc(1,1,"pwd"); //解除文档保护 document.all.FramerControl1.ProtectDoc(0,1,"pwd"); /* 10.显示或隐藏修订内容 ShowRevisions(long nNewValue) nNewValue = 0 则隐藏修订 = 1 则显示修订 */ //显示修订留痕 document.all.FramerControl1.ShowRevisions(1); //隐藏修订留痕 document.all.FramerControl1.ShowRevisions(0); /* 11.插入合并文件, strFieldPath 文件路径,可以是http,ftp的路径 pPos = 0 //当前鼠标位置 1;文件开头 2;文件末尾 pPos的第4位为1的时候,代表插入的是图片 InSertFile(BSTR strFieldPath, long lPos) */ //文件头部插入文件 document.all.FramerControl1.InSertFile("http://XX.com/XX.doc",1); //文件尾部插入文件 document.all.FramerControl1.InSertFile("http://XX.com/XX.doc",2); //当前光标位置插入文件 document.all.FramerControl1.InSertFile("http://XX.com/XX.doc",0); //文件头部插入图片 document.all.FramerControl1.InSertFile("http://XX.com/XX.jpg",9); //文件尾部插入图片 document.all.FramerControl1.InSertFile("http://XX.com/XX.jpg",10); //当前光标位置插入图片 document.all.FramerControl1.InSertFile("http://XX.com/XX.jpg",8); /* 0x31. 文档另存为 HRESULT SaveAs([in] VARIANT strFileName, [in] VARIANT dwFileFormat, [out,retval] long* pbool); 参数: strFileName:文件本地路径,如c:\\11.doc dwFileFormat: 文件格式 dwFileFormat的数值为: Excel: Type enum XlFileFormat { xlAddIn = 18, xlCSV = 6, xlCSVMac = 22, xlCSVMSDOS = 24, xlCSVWindows = 23, xlDBF2 = 7, xlDBF3 = 8, xlDBF4 = 11, xlDIF = 9, xlExcel2 = 16, xlExcel2FarEast = 27, xlExcel3 = 29, xlExcel4 = 33, xlExcel5 = 39, xlExcel7 = 39, xlExcel9795 = 43, xlExcel4Workbook = 35, xlIntlAddIn = 26, xlIntlMacro = 25, xlWorkbookNormal = -4143, xlSYLK = 2, xlTemplate = 17, xlCurrentPlatformText = -4158, xlTextMac = 19, xlTextMSDOS = 21, xlTextPrinter = 36, xlTextWindows = 20, xlWJ2WD1 = 14, xlWK1 = 5, xlWK1ALL = 31, xlWK1FMT = 30, xlWK3 = 15, xlWK4 = 38, xlWK3FM3 = 32, xlWKS = 4, xlWorks2FarEast = 28, xlWQ1 = 34, xlWJ3 = 40, xlWJ3FJ3 = 41, xlUnicodeText = 42, xlHtml = 44 }; Word: Type enum WdSaveFormat { wdFormatDocument = 0, wdFormatTemplate = 1, wdFormatText = 2, wdFormatTextLineBreaks = 3, wdFormatDOSText = 4, wdFormatDOSTextLineBreaks = 5, wdFormatRTF = 6, wdFormatUnicodeText = 7, wdFormatEncodedText = 7, wdFormatHTML = 8 }; PPT: enum PpSaveAsFileType { ppSaveAsPresentation = 1, ppSaveAsPowerPoint7 = 2, ppSaveAsPowerPoint4 = 3, ppSaveAsPowerPoint3 = 4, ppSaveAsTemplate = 5, ppSaveAsRTF = 6, ppSaveAsShow = 7, ppSaveAsAddIn = 8, ppSaveAsPowerPoint4FarEast = 10, ppSaveAsDefault = 11, ppSaveAsHTML = 12, ppSaveAsHTMLv3 = 13, ppSaveAsHTMLDual = 14, ppSaveAsMetaFile = 15, ppSaveAsGIF = 16, ppSaveAsJPG = 17, ppSaveAsPNG = 18, ppSaveAsBMP = 19 }; */ /* 0x32. 删除本地文件 HRESULT DeleteLocalFile([in] BSTR strFilePath); 参数: strFileName:文件本地路径,如c:\\11.doc */ /* 0x33.创建临时文件 HRESULT GetTempFilePath([out,retval] BSTR* strValue); 返回: 临时文件的路径地址。使用完后,用DeleteLocalFile 删除 */ /* 0x34.设置文档显示模式 HRESULT ShowView([in] long dwViewType, [out,retval] long * pbool); dwViewType的可取值为: enum WdViewType { wdNormalView = 1, wdOutlineView = 2, wdPrintView = 3, wdPrintPreview = 4, wdMasterView = 5, //这个是大纲 wdWebView = 6 }; */ //大纲模式 document.all.FramerControl1.ShowView(5); /* 0x39:下载远程文件 HRESULT DownloadFile( [in] BSTR strRemoteFile, [in] BSTR strLocalFile, [out,retval] BSTR* strValue); 参数: strRemoteFile:远程路径地址,http or Ftp strLocalFile: 本地保存地址,if strLocalFile == NULL then Create Temp File and return TempFile's Path */ /* 0x40:增加Http上传时候的,附加其他文件 HRESULT HttpAddPostFile([in] BSTR strFileID, [in] BSTR strFileName, [out,retval] long* pbool); 参数: strFileID:文件的ID,供服务器端页面解析 strFileName: 本地文件地址 */ /* 0x41,0x42.获取详细的修订信息。 GetRevCount( [out,retval] long * pbool); GetRevInfo([in] long lIndex, [in] long lType, [out,retval] BSTR* pbool); 例子如下 */ var vCount; vCount = document.all.FramerControl1.GetRevCount(); alert(vCount); var vOpt = 0; var vDate; for(var i=1; i<= vCount; i++){ vOpt = document.all.FramerControl1.GetRevInfo(i,2); if("1" == vOpt){ vOpt = "插入"; }else if("2" == vOpt){ vOpt = "删除"; }else{ vOpt = "未知操作"; } vDate = new String(document.all.FramerControl1.GetRevInfo(i,1)); vDate = parseFloat(vDate); alert(vDate); dateObj = new Date(vDate); alert(dateObj.getYear() + "年" + dateObj.getMonth() + 1 + "月" + dateObj.getDate() +"日" + dateObj.getHours() +"时" + dateObj.getMinutes() +"分" + dateObj.getSeconds() +"秒" ); alert("用户:"+document.all.FramerControl1.GetRevInfo(i,0) + "\r\n操作:" + vOpt + "\r\n内容:" + document.all.FramerControl1.GetRevInfo(i,3)); } /* 0x43.设置基本信息: HRESULT SetValue([in] BSTR strValue, [in] BSTR strName, [out,retval] long* pbool); 1.设置文件只读密码 SetValue("password","::DOCPROP:PassWord"); 2.设置文件修改密码 SetValue("password","::DOCPROP:WritePW"); 返回值: 0 正确 -1:不支持此命令,请确定您的第二个参数没有传错 -127:异常 */ //设置文件只读密码 document.all.FramerControl1.SetValue("password","::DOCPROP:PassWord"); //设置文件修改密码 document.all.FramerControl1.SetValue("password","::DOCPROP:WritePW"); /* 0x44.设置文档变量,这个很少能用到 HRESULT SetDocVariable([in] BSTR strVarName, [in] BSTR strValue,[in] long lOpt, [out,retval] long* pbool); strVarName: 变量名 strVlaue:变量值 lOpt: 操作类型, 按位 第一位为1: 表示update域关联的 第二位为1: 表示如果没有这个变量则添加 第三位为1: 未来支持 return: 0:OK -127:异常 */ /* 0x45: 分页保存 HRESULT SetPageAs([in] BSTR strLocalFile, [in] long lPageNum, [in] long lType,[out,retval] long* pbool); strLocalFile:本地路径 lPageNum:页数 */

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值