웹사이트 검색

AWS의 S3에서 정적 웹 사이트에 액세스하기 위해 DomainName으로 Route53을 구성하는 방법


이 페이지에서

  1. 전제 조건
  2. 무엇을 할 것인가?\n
  3. AWS에 로그인
  4. S3 버킷 구성
  5. 레코드세트 만들기
  6. 결론

이 문서는 S3에서 정적 웹사이트를 호스팅하고 하위 도메인에서 S3 버킷의 정적 웹사이트로 트래픽을 리디렉션하는 단계를 안내합니다. 이를 위해서는 AWS에서 구입한 도메인이 필요합니다. AWS에 도메인이 있으면 하위 도메인을 생성하고 여기에서 S3 버킷으로 요청을 리디렉션할 수 있습니다.

정적 웹사이트는 고정 콘텐츠가 포함된 웹페이지가 포함된 기본 유형의 웹사이트입니다. 각 페이지는 HTML로 코딩되어 그 안에 있는 콘텐츠를 제공하는 반면 동적 웹사이트는 PHP, JSP 또는 ASP.NET과 같은 서버 측 스크립트를 비롯한 서버 측 처리에 의존합니다. S3는 동적 웹사이트가 아닌 정적 웹사이트만 지원합니다.

이 문서를 진행하기 전에 S3 Bucket 및 Route53에 대한 기본적인 이해가 있다고 가정합니다.

또한 AWS에서 도메인을 구매하는 것은 무료가 아니며 비용이 청구된다는 점에 유의하세요. 도메인을 구매하면 중간에 취소하더라도 차감된 금액은 환불되지 않으며 HostedZone 생성도 무료가 아닙니다. 여기를 클릭하여 가격을 확인하세요.

S3 버킷도 비용이 발생하지만 매우 적습니다. S3 가격에 대해 알아보려면 여기를 클릭하세요.

전제 조건

  1. AWS 계정(계정이 없는 경우 생성).
  2. 도메인 이름(AWS에서 구입)
  3. S3 버킷(AWS에서 S3 버킷을 만드는 방법을 알아보려면 여기를 클릭하세요.)\n

우리는 무엇을 할 것인가?

  1. AWS에 로그인
  2. S3 버킷 구성
  3. 레코드 세트 만들기

AWS에 로그인

계정에 로그인하기 위해 사용자 인증 정보를 입력할 수 있는 로그인 페이지로 이동하려면 여기를 클릭하세요.

계정에 성공적으로 로그인하면 다음과 같이 기본 AWS 관리 콘솔이 표시됩니다.

S3 버킷 구성

화면 상단의 검색창에 S3를 검색하세요.

계정 아래의 S3 버킷 대시보드에 나열된 모든 S3 버킷을 볼 수 있습니다. S3 버킷은 리전별로 필터링되지 않으며 모든 리전의 버킷이 함께 나열됩니다.

"kops.devopslee.com" 버킷을 사용하여 정적 페이지를 호스팅할 것입니다. S3 버킷이 없는 경우 계속 진행하기 전에 버킷을 만드세요. 버킷 이름은 하위 도메인/도메인 이름과 일치해야 합니다.

따라서 하위 도메인 "kops.devopslee.com"을 사용하는 경우 내 버킷 이름도 동일해야 합니다(예: "kops.devopslee.com").

버킷에 대한 퍼블릭 액세스가 허용되는지 확인하고 허용되지 않는 경우 퍼블릭 액세스를 편집하고 허용합니다. 공개 액세스를 수정하려면 권한 탭으로 이동하여 "공개 액세스 차단" 아래의 "수정"을 클릭하고 4가지 옵션을 모두 선택 해제하세요.

또한 S3 버킷에 다음 버킷 정책을 추가합니다. 내 Github 저장소에서 이 정책을 다운로드할 수도 있습니다.


{ "Version": "2012-10-17", "Id": "Policy1548223592786", "Statement": [ { "Sid": "Stmt1548223591553", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::your-s3-bucket-name-here/*" } ] }


버킷 정책을 편집하고 위의 정책을 추가한 다음 그 안에 있는 "arn"을 버킷의 "arn"으로 변경하십시오.

속성 탭에서 페이지 하단에서 아래로 스크롤하여 정적 웹 사이트 호스팅이 활성화되어 있는지 확인한 다음 활성화합니다.

이제 S3 버킷에 필요한 구성이 준비되었으며 정적 웹 사이트를 업로드할 수 있습니다.

원하는 경우 내 Github 저장소에서 내 샘플 index.html을 다운로드하여 버킷에 업로드할 수 있습니다.

레코드세트 만들기

화면 상단 검색창에 Route53을 검색합니다.

다음과 같이 선택한 하위 도메인/호스팅 영역을 만듭니다.

하위 도메인/호스팅 영역에 레코드 세트를 생성하고 별칭으로 전환한 다음 "레코드 유형 --> S3 웹 사이트 엔드포인트에 대한 별칭"을 선택하고 s3 버킷을 선택합니다.

이제 하위 도메인/호스팅 영역이 다음과 같이 표시됩니다.

NS 유형의 하위 도메인에 대한 기본 호스팅 영역에 항목이 있는지 확인하십시오.

필요한 구성을 마쳤으며 이제 라우팅 목적으로 사용한 하위 도메인에서 정적 웹사이트에 액세스할 수 있습니다.

웹 브라우저에서 하위 도메인 URL을 누르십시오.

다음은 정적 웹 사이트에서 사용한 index.html입니다.

결론

이 문서에서는 하위 도메인에서 S3 버킷으로 트래픽을 라우팅하는 단계를 살펴보았습니다. 기본 도메인을 사용하기 위해 따를 수 있는 동일한 단계입니다. 이제 S3 버킷의 이름이 하위 도메인/도메인 이름과 일치해야 한다는 것을 알고 있습니다.