CloudFront를 이용한 서비스 사용 중에 정기 점검이 발생하거나 예기치 않은 장애가 발생할 수 있습니다.
이러한 상황에 대비하여 특정 응답코드(ex: 50x ...) 출력 시 설정된 대체 페이지를 출력하도록 하는 ErrorPage 기능에 대한 가이드 입니다.
-
사전 구성 환경
- CloudFront Origin, Behavior 서비스 구성
- CloudFront DNS Name으로 웹페이지 출력 확인
- CloudFront Origin, Behavior 서비스 구성
-
ErrorPage 구성하기
페이지는 S3에서 불러오기 때문에 CloudFront에 연결하기 위한 S3를 구성- S3 생성 후 불러올 파일(.html) 업로드
- CloudFront Origin에 S3 추가
- S3 퍼블릭 엑세스 비활성화 시 아래 이미지처럼 OAI사용하여 S3에 권한 연결
- S3 - 권한 탭 이동하여 버킷 정책 내 엑세스 권한 추가
- 참고 URL : https://docs.aws.amazon.com/ko_kr/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html
- CloudFront Behavior 설정
- 원본 그룹은 타겟이 될 S3로 지정
- 경로 패턴은 S3에 업로드 한 파일 이름
- Cloudfront ErrorPage 탭에서 사용자 정의 오류 응답 생성
- 대체 페이지 출력할 오류코드 선택
- 오류 응답 사용자 정의 '예' 선택 후
. 응답 페이지 경로 입력(S3 Origin 설정한 경로패턴과 동일하게 설정)
. 페이지로 반환 될 응답 코드 설정.
- S3 생성 후 불러올 파일(.html) 업로드
-
서비스 중지 후 페이지 출력 확인
- 서비스 중지
- 웹페이지 출력 확인
- S3에 업로드 했던 페이지가 출력 되며, 설정했던 HTTP 응답 코드에 따른 Status Code 또한 출력
- 서비스 중지