본문 바로가기

AWS

Route 53과 S3를 이용해서 웹 페이지에 도메인 주소를 설정하는 방법

AWS의 Route 53과 S3만 이용하더라도 도메인 주소를 설정한 웹 페이지를 만들 수 있다.

 

1. Route 53에서 도메인을 구입한다.

thinkforthink.tistory.com/287

 

나머지 과정은 아래 문서에 잘 나와 있다.

docs.aws.amazon.com/AmazonS3/latest/dev/website-hosting-custom-domain-walkthrough.html

이하는 큰 흐름을 볼 수 있도록 대략적인 과정만 적어보겠다.

 

2. S3에서 두 버킷을 생성한다.

trshooter.com으로 도메인을 생성했다면

두 버킷의 이름을 trshooter.com과 www.trshooter.com으로 해야 한다. 

 

trshooter.com은 메인으로 쓸 버킷이다.

버킷의 속성 탭에서 제일 아래에 있는 정적 웹사이트 호스팅을 활성화한다.

인덱스 문서 이름을 index.html로 설정하고

버킷에 홈페이지로 쓸 index.html 파일을 올린다.

속성의 제일 아래에 있다.

 

 

www.trshooter.com은 서브 도메인을 위한 버킷이다. 

해당 주소로 접속시 trshooter.com으로 리다이렉트하게 된다.

마찬가지로 버킷의 속성 탭에서 정적 웹사이트 호스팅을 활성화하는데

호스팅 유형은 객체에 대한 요청 리디렉션으로,

리디렉션을 할 도메인(trshooter.com)을 적고,

프로토콜은 http를 선택한다.

 

 

3. 퍼블릭 액세스 차단을 해제한다.

권한 탭에서 퍼블릭 액세스 차단의 체크를 모두 해제한다.

 

4. 버킷 정책을 설정한다.

권한 탭의 버킷 정책에 아래 내용을 붙여넣는다.

 

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "PublicReadGetObject",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::s3-exercise/*"
        }
    ]
}

 

위에서 s3-excercise 부분만 도메인 이름으로 수정한다.

 

5. 접속이 가능한지 테스트한다.

속성 탭의 제일 아래 버킷 웹 사이트 엔드포인트 주소로 접속했을 때 index.html이 잘 나타나는지 확인한다.

 

6. Route 53에서 alias records를 설정한다.

Route 53 콘솔의 대시보드에서 호스팅 영역을 클릭한다.

해당 도메인 이름을 클릭한다.

레코드 생성을 클릭하고 아래와 같이 설정한 뒤 다시 레코드 생성 버튼을 클릭한다.

 

 

서브 도메인을 위해 한 번 더 레코드 생성을 한다.

이때에는 레코드 이름을 blog 대신 www로 설정한다.

 

이제 trshooter.com이나 www.trshooter.com을 통해 웹 페이지에 접속할 수 있다.

 

웹 페이지를 https로 바꾸고 싶다면 추가적으로 cloudFront를 써야 한다.

aws.amazon.com/ko/premiumsupport/knowledge-center/cloudfront-serve-static-website/