SharePoint Online-innehåll visas inte i en lokal SharePoint-sökning
Problem
Tänk dig följande scenario:
Du konfigurerar utgående hybridsökning för att returnera resultat från SharePoint Online i en lokal SharePoint 2013-miljö.
När en användare utför en fråga från en lokal SharePoint 2013-webbplats visas endast resultat från den lokala SharePoint 2013-miljön. Inga resultat returneras från SharePoint Online.
En administratör redigerar frågeregeln som är associerad med resultatkällorna. Sedan öppnar administratören Query Builder från resultatblocket. Detta utlöser dock följande fel:
1 3/4 System.Net.WebException: Begäran avbröts: Begäran avbröts. -->Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2ErrorResponseException: Fjärrservern returnerade ett fel: (404) Hittades inte. på Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2Client.GetResponse(Uri stsurl, OAuth2AccessTokenRequest message) på Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2Client.RequestOAuthToken(Uri stsUrl. OAuth2AccessTokenRequest-begäran) på stslnfo, OAuth2EndpointIdentity endpointldentity) på Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2SecurityTokenManager.GetRawBearerToken(String nameldentifier, SPSecurityTokenServiceConnectionInformation stslnfo.
Dessutom loggas följande undantag i ULS-loggen (Unified Logging Service):
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)
Lösning
Lös problemet genom att avgöra om söktjänsten Programproxy har distribuerats i partitionsläge. I så fall tar du bort och återskapar proxyn utan att använda partitionsläge.
ANTECKNINGAR
Microsoft 365 stöder inte inkommande hybridsökningsfrågor när den lokala söktjänsten Programproxy distribueras i partitionerat läge.
Följ metodtipsen och utför en säkerhetskopia innan du följer de här stegen. Mer information finns i Säkerhetskopiera tjänsten Search program i SharePoint Server.
Gör detta genom att följa dessa steg i SharePoint Management Shell.
Hämta ID:t för söktjänstprogrammet. Gör detta genom att köra följande cmdlet:
$ssa=Get-SPEnterpriseSearchServiceApplication
Hämta ID:t för söktjänsten Programproxy. Gör detta genom att köra följande cmdlet:
$ssaproxy=Get-SPServiceApplicationProxy –identity <guid>
OBSERVERA Proxy-GUID för tjänstprogram är unikt för varje servergrupp. Kör cmdleten Get-SPServiceApplicationProxy och notera GUID för proxyn för söktjänstprogram.
Granska resultatet $ssaproxy.properties. Proxyn bör anges som partitionerad. Om så är fallet går du till steg 4 för att uppdatera proxyegenskaperna.
Uppdatera proxyegenskaperna. Gör detta genom att köra följande cmdlet:
$proxy = get-spenterprisesearchserviceapplicationproxy $proxy.Properties["Microsoft.Office.Server.Utilities.SPPartitionOptions"] = 0 $proxy.Update() $ssa = get-spenterprisesearchserviceapplication $ssa.SetProperty("IgnoreTenantization",1) $ssa.Update()
När du har slutfört de här stegen kontrollerar du om problemet har lösts. Annars går du till steg 5 för att ta bort och återskapa proxyn.
Ta bort Programproxy för söktjänsten. Gör detta genom att köra följande cmdlet:
Remove-SPServiceApplicationProxy $ssaproxy
Skapa en ny Programproxy för söktjänsten. Gör detta genom att köra följande cmdlet:
New-SPEnterpriseSearchServiceApplicationProxy -SearchApplication $ssa -Name "Search Service Application Proxy"
När du har följt de här stegen bör den lokala SharePoint 2013-sökgruppen börja returnera resultat från SharePoint Online.
Mer information
Mer information finns i Förstå flera innehavare i SharePoint Server 2013.
Behöver du fortfarande hjälp? Gå till SharePoint Community.