2017-05-01 20 views
1

호스트 할 BLOB 저장소에 파일이 있습니다. 최종 사용자가 특정 경로로 이동하여 해당 국가에만 해당되는 응답을 받길 원합니다. 나는 사용자가 xxxx.edgesites.net 다음 그들은 미국과 uk.js 경우에있는 경우 자신의 usa.js를받을 가고 싶습니다 usa.js uk.jsAzure CDN geo redirect

:

예 나는 파일이 그들은 영국에 있습니다.

azure CDN의 지리적 필터링 기능은 지리적 위치에 따라 액세스 만 허용하거나 차단하는 것처럼 보입니다.

내 최종 목표에 도달하는 또 다른 방법이 있습니까? 어쩌면 CDN -> 기능 -> BLOB?

답변

1

당신은 실제로 버라이존 프리미엄 프로필에있는 모든 푸른 CDN에서이 작업을 수행 할 수있다.

프리미엄 프로파일은 URL 재 작성 기능과 함께 사용할 로케일 특정 파일로 보낼 수있는 규칙 엔진 - 위치 일치 조건을 제공합니다.

더보기 : https://docs.microsoft.com/en-us/azure/cdn/cdn-rules-engine-reference-match-conditions#Location

+0

고마워요! 실제로 규칙 엔진에 넣어야하는 것을 도와 줄 수 있습니까? 고통스럽게 새로운 규칙이 활성화되기를 기다리는 것이 느리고 모든 잘못된 값을 넣는 것처럼 보입니다. 나는 생각했다. if (국가는 "미국"과 일치한다) 다음 URL은 "(. *)"을 "us- $ 1"로 다시 작성한다. 그런 다음 CDN에 들어오는 모든 요청은 대신 '우리'버전의 파일을 가져옵니다. – Quincy

+0

^감사합니다. 내 후속 조치를 봤어? – Quincy

+0

이것은 단지 1 개의 js 파일 또는 많은 수의 파일입니까? –

0

Azure CDN은 다운로드 속도를 높이기 위해 인터넷 대기 시간을 절약하는 방식으로 글로벌 배포를 위해 단일 파일을 캐시하므로이 기능이 작동하지 않습니다.

원하는 것을 구현하려면 Azure Traffic Manager를 사용할 수 있습니다. 성능 알고리즘을 사용하여 트래픽 관리자를 만듭니다. 그런 다음 Azure 저장소 계정을 가리키는 외부 끝점을 지정하고 Azure 저장소 계정을 미국 지역에 저장하고 영국의 저장소 계정을 영국 지역에 배치하십시오. 그러나 파일 이름을 같은 파일 이름으로 지정해야합니다. 그런 다음 각 지역의 사용자가 파일을 다운로드하려고하면 인터넷 대기 시간과 관련하여 가장 가까운 Azure 지역으로 연결됩니다.

USA User -> hits domain.com -> directed to US region -> downloads file.js for US 

UK User -> hits domain.com -> directed to UK region -> downloads file.js for UK 

가 또는 당신은 또한 특정 엔드 포인트에 특정 국가의 사용자를 직접 교통 관리자와 지리적 인 라우팅 알고리즘을 사용할 수 있습니다 : 당신이 교통 관리자와 올바르게 보관 계정을 설정 한 후

요청은 다음과 같이 작동합니다 . 설명 된 시나리오에서 실제로 더 잘 작동 할 수 있습니다.

https://docs.microsoft.com/en-us/azure/traffic-manager/traffic-manager-routing-methods

+0

덕분에,이에 대한 단점은 내가 설정에 도메인이 필요합니다. – Quincy

+0

@Quincy 사용자 지정 도메인을 설정하지 않고 Azure CDN 하위 도메인을 끝점으로 사용할 수 있습니다. –

+0

감사합니다. Azure CDN에서와 같은 소리가납니다. '사용자 지정 원점'이있는 끝점을 만들고 트래픽 관리자 주소를 그 안에 넣었습니까? – Quincy