在线⽂档预览⽅案-officewebapps
最近在做项⽬时,要在⼿机端实现在线⽂档预览的功能。于是百度了⼀下实现⽅案,⼤致是将⽂档转换成pdf,然后在通过插件实现预览。这些⽅案没有具体实现代码,也没有在线预览的地址,再加上项⽬时间紧迫。只能考虑其它⽅案,这时有两个⽅案映⼊眼帘;分别是微软的office web apps⽅案,永中DCS⽂档在线预览⽅案,进⾏了⼀番对⽐;
1.永中DCS⽅案
⽂档在线预览软件是永中软件股份有限公司基于⼗多年核⼼技术积累、⾯向移动互联领域推出的⼀款⽂档处理软件。永中DCS采⽤⾃主可控核⼼技术,具备快速技术和服务响应能⼒,把⽂档原样输出为 HTML,图⽚等,即点即得、⽆需下载、保护⽂档隐私,快速⾼效,轻松实现⽂档在线安全阅读。⽬前国内主流邮箱如⽹易、腾讯等及知名的OA⼚商泛微、致远等使⽤的就是该⽅案,⽬前使⽤该⽅案的政府、⼤型央企也⽐较多(感兴趣的可以去官⽹看看),服务的稳定性和安全性是很有保障的。使⽤该⽅案的好处:
1.现有代码改动量很⼩,⼏乎可以忽略不计。
2.⽀持⽂档类型很全⾯,doc,ppt,xls,docx,pptx,xlsx,pdf,CAD,PSD,3D等80多种不同格式⽂件类型。
3.多浏览器⽀持,⼿机和pc预览效果佳
4.可私有化部署分为基础班版、⾼级版、国产化版,收费价格不定(未做咨询)
5.专业团队维护
6.可以做⽂档组装(套红、签批),⽂档⽔印,安全预览(Canvas绘制),⽂档的拆分与合并,PPT⽂件同步预览等增值功能项
2.微软office web apps⽅案
⽬前使⽤该⽅案的有,使⽤该⽅案的好处:
1.现有代码改动量很⼩,⼏乎可以忽略不计。
2.⽆需⾃⼰写代码,只需⼀台服务器即可
3.⽀持⽂档类型很全⾯,doc,ppt,xls,docx,pptx,xlsx,pdf。
4.⼿机和pc都⽀持,⽀持⽂档缓存,分页浏览
,
因各种原因最终选⽤微软的⽅案,于是和同事⼀起⽤⼀台PC机折腾了⼏天终于完成了部署,希望通过本篇记录下安装过程和遇到的坑。我部署的服务地址:下⾯是在线预览的效果图。
阅读⽬录
安装部署步骤
介绍完特性以后,下⾯介绍服务的安装部署。个⼈感觉初次部署可能会觉得⽐较困难,因为这个服务限制还是很多的。
服务器环境要求
1.转换⽂档需要两台服务器,⼀台为转换server,另外⼀台为域控server。(安装office web apps的服务器必须加域才能安装成功,如果没有加域后⾯步骤会出现错误,疑难问题⾥⾯会介绍)
2.系统要求为widow server2008R2 64bit SP1或者以上,NET Framework 4.5,KB2592525,Windows PowerShell
3.0,IIS,保证80 443 809端⼝不被占⽤,确保当前机器没有安装office,确保当前机器没有安装Exchange,sharepoint,lync server,sql server
3.服务器带宽和内存越⾼越好,测试发现⽐较耗性能,原因得从服务的实现原理上讲起。office web apps服务会通过⽤户提供的⽂档src,从src服务器上把⽂档下载下来,然
后进⾏转换,根据⽂档名称进⾏缓存,转换完成以后返回。带宽越⼤下载过程使⽤的时间越短,服务器性能越好转换速度越快。
域控服务器安装这⾥就不介绍了,有需要的可以参考这篇⽂章。
软件准备
1.本⽂安装步骤所需的软件我都放在百度云盘了,可以进⾏下载。下载地址:
步骤
下⾯的安装步骤很重要,不按顺序安装可能出现未知错误,很难解决,所以建议按照下⾯步骤进⾏安装。
1.安装 framework4.5
2.安装iis7
打开服务器管理,添加⾓⾊
这⾥说明⼀点,把这些功能全部都勾上,后⾯运⾏命令的时候会⽤到。
3.安装补丁
Windows Server 2008 R2 x64 Edition 更新程序 (KB2592525)_Windows6.1-KB2592525-x64.msu
4.安装powershell
Windows6.1-KB2506143-x64.msu
5.安装墨迹⽀持
服务器管理,添加功能
6.安装office web apps
官⽹下载URL:
7.安装office web apps语⾔包
8.安装office web apps sp1补丁包
9.通过PowerShell配置Office web apps
这个步骤是最容易出错的,记得要使⽤域账户右键管理员⽅式运⾏
sql server手机版下载Import-Module OfficeWebApps
New-OfficeWebAppsFarm -InternalURL xx.domin -ExternalURL xx.domin -AllowHttp -EditingEnabled -OpenFromUrlEnabled
New-OfficeWebAppsFarm 的使⽤及各参数含义可以去微软官⽹查看:
-
InternalURL :内⽹浏览地址,xx.domin 其中 xx 表⽰计算机名 domin 表⽰域名
-ExternalURL :外⽹浏览地址
-AllowHttp 允许80端⼝访问
-OpenFromUrlEnabled 允许通过url ⽅式进⾏预览
-CacheLocation 缓存⽂件存放路径 默认是C:\ProgramData\Microsoft\OfficeWebApps\Working\d
-CacheSizeInGB 最⼤缓存⽂件⼤⼩ 单位GB 默认为15GB
关于-InternalURL 的怎么设置,可以计算机右键-》属性进⾏查看 计算机全名则是需要的地址
执⾏完命令就可以在iis 中查看了,可以看到⾃动添加了两个站点,通过上⾯的地址xx.domin 进⾏浏览,出现下⾯的界⾯则表⽰整个安装完成了。
可以通过 xx.domin/hosting/discovery 查看描述
使⽤过程中如果想修改服务配置,可以通过Set-OfficeWebAppsFarm 命令进⾏修改
Set-OfficeWebAppsFarm -AllowHttp
我这边装完以后通过花⽣壳映射了⼀个外⽹地址,⼤家可以访问预览(⽹络可能不稳定)。
使⽤⽰例
安装完成office web apps以后,你可以采⽤以下⽅式实现在线预览。
//在线预览服务地址
var strOfficeApps="docview.mingdao";
//⽂档地址,需要外⽹能访问
var strFileUrl="74881.vhost65.cloudvhost/doc/test.docx";
var strUrl =strOfficeApps+"/op/embed.aspx/src="+encodeURIComponent(strFileUrl);
这样⽣成的地址即可以在浏览器中预览了,你可以把这个地址嵌⼊到iframe中进⾏使⽤
<iframe src='strUrl' width='476px' height='288px' frameborder='0'>This is an embedded <a target='_blank' href='office'>Microsoft Office</a> document, powered by <a target='_blank' href='office/webapps'>Office Web Apps
服务器部署疑难问题
下⾯列举⼀下安装部署过程中出现的⼏个问题及解决办法
1.New-OfficeWebAppsFarm : 登录失败: 未知的⽤户名或错误密码
PS C:\Users\Administrator> New-OfficeWebAppsFarm -InternalURL "xxxx" -AllowHttp -EditingEnabled
New-OfficeWebAppsFarm : 登录失败: 未知的⽤户名或错误密码。
所在位置⾏:1字符: 1
+ New-OfficeWebAppsFarm -InternalURL "xxxx" -AllowHttp -EditingE ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [New-OfficeWebAppsFarm], AuthenticationException
+ FullyQualifiedErrorId : System.Security.Authentication.AuthenticationException,Microsoft.Office.Web.Apps.Adminis
tration.NewFarmCommand
如果碰到这种问题,可能是使⽤的本地账户登录的,需要切换到域账户下⾯操作。
2.HTTP 错误 500.21
访问 xxxx/hosting/discovery
HTTP 错误500.21 - Internal Server Error
处理程序“DiscoveryService”在其模块列表中有⼀个错误模块“ManagedPipelineHandler”
出现这种错误是第⼀步安装的 framework4.5未在iis中注册导致的,以管理员⽅式打开cmd,运⾏以下命令
cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319
.\ -iru
Microsoft (R) ASP.NET RegIIS 版本4.0.30319.17929
⽤于在本地计算机上安装和卸载 ASP.NET 的管理实⽤⼯具。
版权所有(C) Microsoft Corporation。保留所有权利。
开始安装 ASP.NET (4.0.30319.17929)。
.............
ASP.NET (4.0.30319.17929)安装完毕。
iisreset /restart /noforce
正在尝试停⽌...
Internet 服务已成功停⽌
正在尝试启动...
Internet 服务已成功启动
3.⽂件太⼤解决⽅案(>10M)
服务默认⽀持的最⼤⽂件⼤⼩是10M,⼤于10M会报错。可以通过以下步骤解决此问题 OpenFromUrlMaxFileSizeInKBytes=(System.Int32)512000 后⾯不要加分号
1.打开如图⽂件Settings_Service.ini,⽂件⽬录为C:\Program Files\Microsoft Office Web Apps\OpenFromUrlHost
; --- OpenFromUrlHost ---
;
; The application root for the current application
ApplicationRoot=(System.String)/oh
在默认内容后添加(512000/1024M,可以根据⾃⼰的需求设定)
OpenFromUrlMaxFileSizeInKBytes=(System.Int32)512000
2.修改 C:\Program Files\Microsoft Office Web Apps\OpenFromUrlWeb 下的Settings_Service.ini,进⾏相同的修改
3.重启office web apps服务
再重新试⼀下>10M的⽂件,发现可以访问了
4.⽂档地址为ip不是域名的预览报错解决⽅案
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论