S3 일반 목적 버킷에서 AWS Amplify Hosting으로 정적 웹사이트 배포
S3 일반 목적 버킷에서 AWS Amplify Hosting으로 정적 웹사이트 배포
S3에 저장된 정적 웹사이트 콘텐츠를 호스팅하려면 AWS Amplify Hosting을 사용하는 것을 권장해요. Amplify Hosting은 완전 관리형 서비스로, Amazon CloudFront 기반의 전 세계 가용 CDN(콘텐츠 전송 네트워크)에 웹사이트를 쉽게 배포할 수 있게 해주며 복잡한 설정 없이 안전한 정적 웹사이트 호스팅을 가능하게 해줘요. AWS Amplify Hosting을 사용하면 일반 목적 버킷 안 객체의 위치를 선택하고, 콘텐츠를 관리형 CDN에 배포하며, 어디서든 접근 가능한 공개 HTTPS URL을 생성할 수 있어요. Amplify Hosting으로 정적 웹사이트를 배포하면 다음과 같은 이점과 기능을 얻을 수 있어요.
출처: 문서
본문
- Amazon CloudFront 기반 AWS 콘텐츠 전송 네트워크(CDN)로 배포 – CloudFront는 정적·동적 웹 콘텐츠를 사용자에게 더 빠르게 전달하는 웹 서비스예요. CloudFront는 에지 위치라고 하는 전 세계 데이터 센터 네트워크를 통해 콘텐츠를 전달해요. 사용자가 CloudFront로 제공하는 콘텐츠를 요청하면 그 요청은 가장 낮은 지연 시간(시간 지연)을 제공하는 에지 위치로 라우팅되어, 콘텐츠가 최상의 성능과 더 높은 신뢰성·가용성으로 전달돼요. 자세한 내용은 Amazon CloudFront Developer Guide의 CloudFront가 콘텐츠를 전달하는 방법을 참고하세요.
- HTTPS 지원 – 웹사이트와 사용자 웹 브라우저 사이에 안전한 통신과 데이터 전송을 제공해요.
- 사용자 지정 도메인 – Amazon Route 53 같은 도메인 등록 대행사에서 구매한 사용자 지정 URL에 웹사이트를 쉽게 연결할 수 있어요.
- 사용자 지정 SSL 인증서 – 사용자 지정 도메인을 설정할 때 Amplify가 프로비저닝해 주는 기본 관리형 인증서를 사용하거나, 원하는 타사 인증 기관에서 구매한 사용자 지정 인증서를 사용할 수 있어요.
- 내장 지표와 CloudWatch 모니터링 – 웹사이트의 트래픽, 오류, 데이터 전송, 지연 시간을 모니터링할 수 있어요.
- 비밀번호 보호 – Amplify 콘솔에서 사용자 이름과 비밀번호 요구 사항을 설정해 웹사이트 접근을 제한할 수 있어요.
- 리디렉션 및 재작성 – Amplify 콘솔에서 리디렉션과 재작성 규칙을 만들어 웹 서버가 한 URL에서 다른 URL로 탐색을 다시 라우팅하게 할 수 있어요.
Amazon S3 일반 목적 버킷에서 Amplify Hosting으로 애플리케이션을 배포하면 AWS 요금은 Amplify의 요금 모델에 따라 부과돼요. 자세한 내용은 AWS Amplify 요금을 참고하세요.
중요 Amplify Hosting은 Amazon S3를 사용할 수 있는 모든 AWS 리전에서 사용할 수 있는 건 아니에요. Amplify Hosting에 정적 웹사이트를 배포하려면 웹사이트가 들어 있는 Amazon S3 일반 목적 버킷이 Amplify를 사용할 수 있는 리전에 있어야 해요. Amplify를 사용할 수 있는 리전 목록은 Amazon Web Services General Reference의 Amplify 엔드포인트를 참고하세요.
배포 프로세스는 Amazon S3 콘솔, Amplify 콘솔, AWS CLI 또는 AWS SDK에서 시작할 수 있어요. Amplify에는 자신의 계정에 있는 일반 목적 버킷에서만 배포할 수 있어요. Amplify는 계정 간 버킷 접근을 지원하지 않아요.
다음 안내에 따라 Amazon S3 콘솔에서 시작해 Amazon S3 일반 목적 버킷의 정적 웹사이트를 Amplify Hosting으로 배포할 수 있어요.
S3 콘솔에서 Amplify로 정적 웹사이트 배포 (Deploying a static website to Amplify from the S3 console)
Amazon S3 콘솔에서 정적 웹사이트를 배포하는 방법은 다음과 같아요.
- AWS Management Console에 로그인하고 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 열어요.
- 왼쪽 탐색 창에서 Buckets를 선택해요.
- Buckets 목록에서 Amplify Hosting에 배포할 웹사이트가 들어 있는 일반 목적 버킷을 선택해요.
- Properties 탭을 선택해요.
- Static website hosting 아래에서 Create Amplify app을 선택해요. 이 시점부터 배포 프로세스는 Amplify 콘솔로 이동해요.
- Deploy with S3 페이지에서 다음을 수행해요. App name에는 앱 또는 웹사이트 이름을 입력해요. Branch name에는 앱 백엔드의 이름을 입력해요. S3 location of objects to host에는 일반 목적 버킷의 디렉터리 경로를 입력하거나, Browse S3를 선택해 찾아 선택해요.
- Save and deploy를 선택해요.
참고 Amplify에서 호스팅하는 일반 목적 버킷의 정적 웹사이트 객체를 업데이트하면 변경 사항을 적용하려면 애플리케이션을 Amplify Hosting에 다시 배포해야 해요. Amplify Hosting은 버킷의 변경 사항을 자동으로 감지하지 않아요. 자세한 내용은 AWS Amplify Hosting User Guide의 S3 버킷에서 Amplify에 배포된 정적 웹사이트 업데이트를 참고하세요.
Amplify 콘솔에서 바로 시작하려면 AWS Amplify Hosting User Guide의 Amplify 콘솔에서 S3 정적 웹사이트 배포를 참고하세요.
AWS SDK 사용을 시작하려면 AWS Amplify Hosting User Guide의 AWS SDK로 S3에서 정적 웹사이트를 배포하는 버킷 정책 생성을 참고하세요.