0

나는 끈적한 상황에 처해있다.ELN과 EC2를 가리키는 CDN

저는 YouTube와 유사한 웹 사이트를 만들고 있습니다. 그러나 비디오 파일 만 재생하는 대신 태그를 통해 HTML 파일을 표시합니다. HTML 파일은 본질적으로 비디오이지만 애니메이션 HTML 요소를 통해 제작됩니다 (정확한 Adobe Captivate HTML5 강의). HTML 파일은 AWS CDN에서 호스팅되며 웹 사이트 코드는로드 밸런서 뒤에있는 EC2 인스턴스에서 호스팅됩니다.

JavaScript를 통해 iframe의 HTML 비디오에 명령을 보내려고 할 때 문제가 발생합니다. 웹 응용 프로그램의 도메인 이름이 CDN에있는 HTML 파일의 도메인 이름과 다르기 때문에 웹 브라우저가 내 코드 실행을 거부합니다. 브라우저는 이것을 이것을 두 가지 다른 도메인이기 때문에 보안 위협으로 간주하고 명령 실행을 거부합니다. 따라서 내 코드를 실행하려면 사이트와 HTML 콘텐츠의 도메인 원점이 동일해야합니다.

제 질문은입니다. EC2 인스턴스의 파일은 내 S3 인스턴스의 파일과 동일한 공개 도메인을 가질 수 있습니다. S3는 CDN 뒤에 있고 EC2 인스턴스는 다음과 같습니다. 로드 밸런서 뒤에 있습니다.

아니면 다른 방법으로해야합니까?

감사합니다.

+0

같은 CDN 뒤에 S3 및로드 밸런서를 추가하지 않는 이유는 무엇입니까? – error2007s

+0

나는 이것이 불가능하다는 것을 여기서 읽었다 : "CloudFront는 여러 기원의 파일을 요청할 수 없다." - https://forums.aws.amazon.com/thread.jspa?messageID=658997 – AskYous

+3

2011 년으로 돌아 왔습니다. CloudFront는 URL 경로를 기반으로 여러 출처에서 제공 할 수 있습니다. –

답변

3

CloudFront를 S3 및 EC2 인스턴스 앞에 두십시오. 그런 다음 CloudFront Path Patterns을 사용하여 배포를 여러 출처로 매핑하십시오.