AWS

S3를 이용한 정적 웹사이트 호스팅과 버전 관리

heesoohi 2025. 2. 23. 00:02

  # Amazon S3 – Static Website Hosting  

 

Amazon S3로 정적 웹사이트를 호스팅할 수 있고, 사이트는 인터넷 상에서 접근 가능하다. 

 

S3 버킷에 파일(HTML 파일, 이미지 파일 등)을 담고, 웹사이트를 호스팅하는 것과 같이 만들면 아래 예시와 같이, 리전에 따라 조금씩 차이가 있는 url이 만들어진다. 

 

http://bucket-name.s3-website-aws-region.amazonaws.com

http://bucket-name.s3-website.aws-region.amazonaws.com

 

 

사용자들이 S3 버킷에 접근할 수 있도록 S3 버킷에 퍼블릭 읽기가 활성화 되어야 하며,

읽기가 활성화 되어 있는 데도 403 Forbidden error가 뜨는 경우는 버킷이 퍼블릭이 아닌 상태이니, S3 버킷 정책을 추가해서 퍼블릭으로 설정해줘야 한다. 

S3로 호스팅한 웹사이트에 사용자들이 접근할 수 있다.

 

  # Amazon S3 – Versioning  

 

위에서 본 것처럼 S3로 웹사이트를 생성할 수 있는데, 이렇게 생성된 웹사이트의 업데이를 안전하게 하기 위해 필요한 것이 Versioning 이다. 

 

Amazon S3에서 파일에 버전을 매길 수 있고, 이는 버킷 단위에서 설정할 수 있다. 

버킷에 버전 관리 기능이 활성화되어 있으면, 사용자가 파일을 업로드할 때마다 해당 파일에 새 버전이 생성되고 키가 할당된다. 

같은 키로 같은 파일을 다시 업로드 하면, 버전이 1 -> 2 -> 3 이렇게 올라간다. 

 

버전 기능을 활성화한 S3 버킷

 

 

버킷에 버전 기능을 활성화해두면, 의도치 않은 삭제를 막을 수 있는 등(롤백 가능) 안전하게 데이터를 이용할 수 있다.