SharePoint 2016 Microsoft Excel Online Web 部件错误“找不到所需的文件”

本文由支持升级工程师 Rick Andring 撰写。

应用场景

您尝试在 SharePoint 2016 中的 Microsoft Excel Online Web 部件中呈现 Excel 工作簿,并且尝试加载 Web 部件时遇到以下错误:“我们找不到所需的文件”。

SharePoint 2016 Excel Online Web 部件错误消息的屏幕截图。

你会注意到,工作簿正在浏览器中呈现, (视图、编辑和预览) 都正常工作,前提是没有其他问题。

统一日志记录服务 (ULS) 日志记录没有任何帮助,但在 SharePoint 尝试使用工作簿时,你可能会看到如下所示的错误:

ULS 日志的屏幕截图,显示无法获取 WOPI 目标。

Office Online Server统一日志记录服务 (ULS) 将不包含与此问题相关的消息,因为请求甚至不会发送到服务器。

原因

造成此特定问题的原因可能是缺少Office Online Server绑定或自定义绑定。 具体而言,可能缺少“联合”绑定。 此绑定特定于所有 Excel 扩展,并使其能够在 Web 部件中呈现。 在库存绑定方案中,运行 Get-SPWOPIBinding cmdlet 时会看到以下情况:

注意

“WopiZone”和“ServerName”可能有所不同。

Application : Excel
Extension : ODS
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : internal-https

Application : Excel
Extension : XLSB
ProgId 
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : internal-https

Application : Excel
Extension : XLSM
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : internal-https

Application : Excel
Extension : XLSX
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : internal-https

Application : Excel
Extension : ODS
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : external-https

Application : Excel
Extension : XLSB
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : external-https

Application : Excel
Extension : XLSM
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : external-https

Application : Excel
Extension : XLSX
ProgId :
Action : syndicate
IsDefaultAction : False
ServerName : <SERVERNAME>
WopiZone : external-https

解决方案

如果发现缺少“Syndicate”绑定,请在启用了管理员的 SharePoint PowerShell 控制台中以场管理员身份从其中一个 SharePoint 服务器运行以下 cmdlet,将“syndicate”操作添加到 WOPI 绑定:

new-spwopibinding -server oos2016ocsi -action syndicate

注意

此问题仅影响前面提到的产品,并且可能(也可能不是)遇到此特定错误的唯一方法。 在撰写本文时,我们仅在此特定方案中看到这种情况发生。