SharePoint 온-프레미스 검색에 SharePoint Online 콘텐츠가 표시되지 않음
문제
다음 시나리오를 고려하세요.
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 message) at Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2Client.RequestOAuthToken(Uri stsUrl) OAuth2AccessTokenRequest request) at stslnfo, OAuth2EndpointIdentity endpointldentity) at Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2SecurityTokenManager.GetRawBearerToken(String nameldentifier, SPSecurityTokenServiceConnectionInformation stslnfo.
또한 다음 예외는 ULS(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)
해결 방법
이 문제를 resolve 검색 서비스 애플리케이션 프록시 파티션 모드로 배포되었는지 확인합니다. 이 경우 파티션 모드를 사용하지 않고 프록시를 제거한 다음 다시 만듭니다.
노트
Microsoft 365는 온-프레미스 Search Service 애플리케이션 프록시 분할 모드로 배포될 때 들어오는 하이브리드 검색 쿼리를 지원하지 않습니다.
다음 단계를 수행하기 전에 모범 운영 사례를 따르고 백업을 수행합니다. 자세한 내용은 SharePoint Server에서 Search Service 애플리케이션 백업을 참조하세요.
이렇게 하려면 SharePoint 관리 셸에서 다음 단계를 수행합니다.
Search Service 애플리케이션의 ID를 가져옵니다. 이렇게 하려면 다음 cmdlet을 실행합니다.
$ssa=Get-SPEnterpriseSearchServiceApplication
Search Service 애플리케이션 프록시 ID를 가져옵니다. 이렇게 하려면 다음 cmdlet을 실행합니다.
$ssaproxy=Get-SPServiceApplicationProxy –identity <guid>
참고 서비스 애플리케이션 프록시 GUID는 모든 팜에 고유합니다. Get-SPServiceApplicationProxy cmdlet을 실행하고 검색 서비스 애플리케이션 프록시의 GUID를 확인합니다.
$ssaproxy.properties 결과를 검토합니다. 프록시는 분할된 것으로 나열되어야 합니다. 이 경우 4단계로 이동하여 프록시 속성을 업데이트합니다.
프록시 속성을 업데이트합니다. 이렇게 하려면 다음 cmdlet을 실행합니다.
$proxy = get-spenterprisesearchserviceapplicationproxy $proxy.Properties["Microsoft.Office.Server.Utilities.SPPartitionOptions"] = 0 $proxy.Update() $ssa = get-spenterprisesearchserviceapplication $ssa.SetProperty("IgnoreTenantization",1) $ssa.Update()
이러한 단계를 완료한 후 문제가 해결되었는지 여부를 검사. 그렇지 않으면 5단계로 이동하여 프록시를 제거하고 다시 만듭니다.
Search Service 애플리케이션 프록시 제거합니다. 이렇게 하려면 다음 cmdlet을 실행합니다.
Remove-SPServiceApplicationProxy $ssaproxy
새 Search Service 애플리케이션 프록시 만듭니다. 이렇게 하려면 다음 cmdlet을 실행합니다.
New-SPEnterpriseSearchServiceApplicationProxy -SearchApplication $ssa -Name "Search Service Application Proxy"
이러한 단계를 수행한 후 SharePoint 2013 온-프레미스 검색 팜에서 SharePoint Online의 결과 반환을 시작해야 합니다.
추가 정보
자세한 내용은 SharePoint Server 2013의 다중 테넌트 이해를 참조하세요.
아직 해결되지 않았습니까? SharePoint 커뮤니티로 이동합니다.