티스토리 뷰

www.example.com 설정 (route53-> cloudfront -> S3로 연결되는 구조)

1. S3 버킷 생성 

- 이름은 가급적이면 최종 도메인 주소와 동일하게  ( www.example.com ) 부여 할것.

   coludfront 를 거치지 않고 route53에서 바로 S3 를 선택할 경우 이름이 일치해야 선택 가능하기 때문임

- 생성 후 속성 > 정적 웹 사이트 호스팅 에서 버킷 호스팅 설정
  (설정 후 엔드포인트 클릭하여 http 연결 되는지 확인 - 단, 엔드포인트로 테스트하려면 버킷정책이 퍼블릭으로 되어 있어야 함.)


{
    "Version": "2012-10-17",
    "Statement": [

      {
        "Sid": "PublicReadAccess",
        "Effect": "Allow",
         "Principal": "*",
         "Action": "s3:GetObject",
         "Resource": "arn:aws:s3:::www.example.com/*"
    } 
  ]
}


2. coludfront 연결 (Distributon 생성)

- cname: route53에서 연결시 alias 로 사용함. 여러개를 지정해도 상관없으나 route53에서 동일한 이름으로 연결시켜야함.

- SSL 설정 (인증서) 인증서는 버지니아북부에 생성한 인증서만 검색됨. 인증서 설정시 사용할 모든 도메인 네임 추가해야 함. (버킷 네임 포함)

- origin: 1번에서 생성한 S3 버킷 선택

- behvior: http 를 https 로 redirect 할지 선택
- error 처리: http 에러 코드 발생시 어떻게 할지 설정 추가


3. Route53 설정

- 보유하고 있는 도메인에서 record set 추가

name: www.example.com
type: A
Alias: yes
Alias target: 아까 생성한 cloud front ( distribution 생성 후 인식되는데 시간이 좀 걸리므로 distribution name을 직접 입력해도 됨)
Routing policy: Simple
Evaluate Target Health: No 

 

example.com -> www.example.com 으로 redirect

1. S3 버킷명을 최종 도메인 명과 일치하게 구성한 경우 

- S3 버킷 생성 (example.com) , 정적 웹사이트 호스팅 > 요청리디렉션 (www.example.com) 으로 생성

- Route53 에서 S3 버킷 선택 ( 단, https 로는 동작하지 않음 )

 

2. S3 버킷명이 최종 도메인과 일치하지 않는 경우

- S3 버킷 생성 (xxx.example.com) , 정적 웹사이트 호스팅 > 요청리디렉션 (www.example.com)으로 생성

- Cloudfront에서 신규 distribution 생성, S3 버킷 연결 (인증서에 s3 버킷명도 포함되어야 함) 

- cname: example.com 으로 입력

- SSL 설정 (인증서) 인증서는 버지니아북부에 생성한 인증서만 검색됨. 인증서 설정시 사용할 모든 도메인 네임 추가해야 함. (버킷 네임 포함)

- origin: 1번에서 생성한 S3 버킷의 endpoint명 입력 (중요!!! 버킷 연결시 자동완성 이름을 선택하지 말고 xxx.example.com.s3-website.ap-northeast-2.amazon.com 형식을 가지는 s3 endpoint 명을 직접 입력할것)

- behvior: http 를 https 로 redirect 할지 선택


- Route53 에서 cloudfront distribution 명 선택

 

댓글