SharePoint Online 内容未显示在 SharePoint 内部部署搜索

注意: 我们希望能够尽快以你的语言为你提供最新的帮助内容。本页面是自动翻译的,可能包含语法错误或不准确之处。我们的目的是使此内容能对你有所帮助。可以在本页面底部告诉我们此信息是否对你有帮助吗?请在此处查看本文的英文版本以便参考。

问题

请考虑以下情形。

  • 配置出站混合搜索以在 SharePoint 2013 内部部署环境中从 SharePoint Online 返回结果。

  • 当用户从 SharePoint 2013 内部部署网站中,仅从 SharePoint 2013 的结果执行查询的本地环境会显示。从 SharePoint Online 不返回任何结果。

  • 管理员可以编辑与结果源相关联的查询规则。然后,管理员的结果块中打开查询生成器。但是,这会触发以下错误:

    1 3/4 System.Net.WebException: 请求被中止: 请求被取消。--> Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2ErrorResponseException: 远程服务器返回一个错误: (404) 找不到。在 Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2Client.GetResponse (Uri stsurl、 OAuth2AccessTokenRequest 消息) 在 Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2Client.RequestOAuthToken (Uri stsUrl。OAuth2AccessTokenRequest 请求) 在 stslnfo,OAuth2EndpointIdentity endpointldentity) 在 Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2SecurityTokenManager.GetRawBearerToken (字符串 nameldentifier,SPSecurityTokenServiceConnectionInformation stslnfo。

另外,统一的日志记录服务 (ULS) 日志记录是以下例外:

An exception occurred during OAuth2 request to <url specific to your site> 
The remote server returned an error: (404) Not Found. 
at System.Net.HttpWebRequest.GetResponse() 
at Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2Client.GetResponse(Uri stsUrl, 
OAuth2AccessTokenRequest message)

解决办法

若要解决此问题,确定是否在分区模式下部署搜索服务应用程序代理。如果是,删除并重新创建代理而无需使用分区模式。

备注:

若要执行此操作,按照以下步骤在 SharePoint Management Shell。

  1. 获得的搜索服务应用程序的 ID。若要执行此操作,请运行以下 cmdlet:

    $ssa=Get-SPEnterpriseSearchServiceApplication 

  2. 获得的搜索服务应用程序代理的 ID。若要执行此操作,请运行以下 cmdlet:

    $ssaproxy=Get-SPServiceApplicationProxy –identity <guid>

    注意:服务应用程序代理 GUID 是唯一的每个服务器场。运行获取 SPServiceApplicationProxy cmdlet,并记下的搜索服务应用程序代理 GUID。

  3. 查看$ssaproxy.properties结果。应列出代理为分区。如果是这样,转到步骤 4 以更新代理服务器属性。

  4. 更新代理服务器属性。若要执行此操作,请运行以下 cmdlet:

    $proxy = get-spenterprisesearchserviceapplicationproxy
    $proxy。Properties["Microsoft.Office.Server.Utilities.SPPartitionOptions"] = 0
    $proxy。Update ()
    $ssa = 获取 spenterprisesearchserviceapplication
    $ssa。SetProperty("IgnoreTenantization",1)
    $ssa。Update ()

    完成这些步骤之后,检查是否已解决问题。否则,请转至步骤 5 中删除并重新创建代理服务器。

  5. 删除搜索服务应用程序代理。若要执行此操作,请运行以下 cmdlet:

    Remove-SPServiceApplicationProxy $ssaproxy

  6. 创建新的搜索服务应用程序代理。若要执行此操作,请运行以下 cmdlet:

    New-SPEnterpriseSearchServiceApplicationProxy -SearchApplication $ssa -Name "Search Service Application Proxy"

请按照下列步骤之后,SharePoint 2013 内部部署搜索服务器场应开始从 SharePoint Online 中返回结果。

更多信息

有关详细信息,转到SharePoint Server 2013 中的了解多组织

是否仍需要帮助?转到Microsoft 社区

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×