[AWS] S3에 정적페이지를 호스팅 (1차)

주수호·2022년 5월 22일
0

필요한 준비물

AWS계정

S3라는 스토리지 솔루션을 사용할 예정입니다.

대충이라도 꼭 읽으시는걸 추천해요.

1. 버켓 생성

우선 간단히 작성을 하기위해서 버킷이름과 리전을 선택하고, 이를 바로 버킷을 생성하도록 하겠습니다.

정적 웹사이트에 대한 호스팅을 할 수 있도록 하기 위해서 bucket에 access할 수 있는 권한을 해제 합니다.

나머지는 기본으로 하고, 이를 생성합니다.


2. 버킷에 대한 정책 설정하기

해당 페이지는 제가 홈페이지로 만들 목적의 소스들을 호스팅 할 용도의 공간입니다. 그래서 public 설정과 bucket에 대한 정책 설정이 필요합니다.

Permissions에 들어가 해당 설정을 진행해 줍니다.

아래와 같이 public access에 대한 blocking이 모두 해제되어져 있는지에 대한 상태를 확인합니다.

추가 정책설정을 하기 위해 상단에 [Policy Generator]를 선택해 줍니다.

Action에는 GetObject를 선택해주고, ARN값을 입력해 줍니다. (이는 Edit bucket policy에서 ARN네임을 확인가능합니다.)

그리고 [Generate Policy]를 진행해주면, josn형식의 Policy스크립트가 생성됩니다. (해당 옵션을 되도록 깊이 있게 이해하는 것이 좋습니다. 이후 serverless에서 개발을 할 때, 해당 속성들에 대한 이해도가 많은 도움을 줍니다.)

resource key에 대한 값은 뒤에 /* 를 붙여서, bucket에 존재하는 모든 파일들에 대하여 해당 정책을 적용하겠다는 표기를 합니다.
이렇게 최종적으로 public access가능한 정책을 설정한 bucket이 적용되어졌습니다.

3.소스 업로드하기

기본적인 bucket생성에 대한 처리는 이루어 졌으니, 이제 호스팅을 하기위한 소스파일을 올려보겠습니다.

저는 기본적으로 만들어 놓은 이력서용 페이지와 관련되어진 css파일들을 업로드 해놓았습니다.

파일을 성공적으로 업로드 하였습니다.

4. 정적 웹사이트 호스팅

property탭에 맨 하단을 보면 Static website hosting이라는 기능이 있습니다.
이를 활성화 시켜줍니다.

5. 확인

호스팅이 이루어지고 난 뒤, Static website hosting탭에서 해당 endpoint를 확인가능합니다. 해당 주소로 들어가면, 내가 올린 소스파일들을 통해서 페이지가 잘 나오는 것을 확인 할 수 있습니다.

(아직 개발중입니다 : ))

6. 마무리

간단하게 S3를 통한 정적호스팅을 해보았습니다. 첫 시도라 아직 군데군데 미흡한 설명이 많으나, 누구나 참고가능하도록 지속적으로 업데이트 하겠습니다.

profile
항상 준비하는 엔지니어

0개의 댓글