AWS 메뉴얼에 다 있는 내용이다. ( 메뉴얼 보고 따라한걸 정리한 내용입니다. )
https://docs.aws.amazon.com/AmazonS3/latest/dev/website-hosting-custom-domain-walkthrough.html
순서는 아래와 같이 단순하다.
1. S3에 정적 웹을 띄운다.
2. 도메인을 구매한다. ( 기존꺼 사용해도 된다 )
- 제가 이미 도메인을 가지고 있으므로, 이 구매 단계는 건너 뜁니다. ( R53에서 구매/등록까지 가능합니다. )
3. R53에 도메인을 연결한다. NS 연결하는 것을 말한다.
- 외부에서 구입한 도메인이므로 NS를 R53을 바라보도록 해야 한다.
4. R53에 등록된 도메인에서 S3 정적웹을 연결한다.
※ S3는 AWS에서 제공하는 스토리지다. 서버설치나 APM같은거 설치 없이 바로 정적웹으로 활용할 수 있다.
이미지는 없으며, 타이핑으로만 정리합니다.
이제 상세히 적어봅니다.
1. S3에 정적 웹 띄우는 법
- S3에 폴더를 만든다. 폴더명은 'yougom'
- 좌측 상단의 파란색 버튼, Upload를 클릭하여 html파일을 올려준다. 나는 index.html을 올렸다.
-> index.html 소스 내용입니다.
<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>S3 WebSite Test</title> </head> <body> <h1>blog.yougom.com</h1> <p>Thank you, Amazon S3!</p> </body> </html> |
- Properties를 클릭하여 아래와 같이 폴더 속성 설정을 한다. ( 파일 속성 아님 )
- 폴더에 모두가 볼 수 있도록 Permissions - Edit bucket policy 권한 설정 후 저장한다.
-> 아래 내용을 권한설정에 붙여넣으면 된다. 빨간색 글자 수정해서 사용하면 됨.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AddPerm", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::yougom/*" } ] } |
- 정적 웹 기능을 수행하도록 Static Website Hosting -> Enable Website Hosting 기능을 클릭하여 활성화하고 저장한다.
( 세번째는 Redirect 해주는 기능이다. 말 그대로 해당 페이지로 점핑시켜준다. ( ex. www.yougom.com -> yougom.com )
-> Index Document 값에 업로드한 파일명( index.html )을 적어준다.
-> EndPoint : myweb.s3-***************************.amazoneaws.com 을 클릭해서 잘 동작하는지 본다.
- 위 EndPoint가 잘 작동한다면, 적용이 잘된 것이다.
2. 도메인 구매.
- 난 도메인이 있으므로, 패쓰.
- r53에서 구입하고싶다면, 여기 도움말을 참고하면 된다.
http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar.html?console_help=true
3. 도메인NS가 Route53을 바라 볼 수 있도록 설정한다.
- R53 -> Create Hosted Zones 으로 yougom.com 도메인을 생성하면 NS정보가 나온다.
-- 생성시 type은 public Hosted zone으로 한다. VPC는 내부 도메인연결시 사용한다. 고급이므로 패쓰.
-- 생성이 완료되면 NS 목록 4개와 SOA 목록 1개가 만들어진다.
- 외부에서 구매한 도메인의 NS정보를 위의 만들어진 NS 목록 4개를 입력하여 R53을 바라보게 한다.
yougom.com. NS ns-111.awdns-01.org ns-12.awsdns-22.net ns-15.awsdns-33.co.uk ns-17.awsdns-46.net |
( 난 r53test.yogom.com을 NS로 사용했다. <== 괜히 이거 하려다 실패하실수 있으니 정석대로 하시길 ^^; )
4. R53에 도메인이 연결되었다.
AWS에 연결된 도메인을 S3 EndPoint에 연결할 순서다.
- R53 -> Hosted Zones ( yougom.com ) -> Create Record Set을 클릭하여 연결할 도메인을 만든다.
- Name : yougom.com <================== 연결할 홈페이지. home.yougom.com으로 입력해도 된다.
Type : A - IPv4 Address ( Alias type )
Alias : Yes 체크
Alias Target : S3 Website Endpoint <================ No Targets Available이 뜰경우 업뎃이 안된경우이니 기다려야 한다.
좀전에 클릭했던 EndPoint주소가 뜨면 그 내용을 선택한다. ( 타이핑이나 붙여넣기 안됩니다. )
위 내용 확인 후 저장.
yougom.com을 브라우저에 입력하고 홈페이지가 잘 떴나 확인하면 된다.
만약 안뜬다면, DNS가 업뎃되기를 기다리면 된다. 업뎃 시간이 얼마나 걸릴지는 알기 어렵다 ^^;
API로 R53를 다룰 수 있다. ( 링크 참고 )
http://docs.aws.amazon.com/Route53/latest/APIReference/requests.html