카테고리 없음
사용자 에러페이지 구축하기
autumn-code
2024. 11. 5. 16:30
AWS 사용자에러페이지
서비스 장애 시 사용자에게 안내를 제공하는 에러페이지
방법 :
- Apache 서버에서 에러 페이지 설정
- CloudFront + S3를 사용한 에러페이지 설정
Apache 서버내의 에러페이지 설정
설정 방법 :
ErrorDocunent 지시문을 사용하여 특정 코드상태 503 발생 시 사용자 정의 HTML페이지를 제공
/*
ProxyPass /custom-503 !: /custom-503 경로는 프록시에서 제외하도록 지정 즉, Apache는 /custom-503에 대해 프록시 서버로 전달하지 않고, 자체적으로 처리하거나 별도의 설정에 따라 응답을 제공
ProxyPass / http://destination-server/: /로 시작하는 모든 경로를 http://destination-server/로 프록시 예외로 설정된 경로가 아니라면, Apache는 모든 요청을 destination-server로 전달
*/
ErrorDocument 503 /custom-503.html
ProxyPass /custom-503 !
장점
- 설정 파일에서 손쉽게 에러 페이지를 설정할 수 있어 인프라 구성이 필요없음
- 추가적인 서비스 비용이 필요없음
- 서버에서 직접 제어 가능하고 상세 코드별 세밀한 제어 가능
단점
1. 모든 에러 페이지 요청을 서버가 처리해야하므로 고트래픽 상황에서 서버 부하가 증가할 수 있음
- 서버 자체가 장애 상태가 되면 에러페이지 제공 불가
- 고트래픽 서비스에서 부하 분산 및 가용성 유지가 어려움
활용 사례
- 소규모 웹 애플리케이션이나 고가용성이 요구되지 않는 서비스
- 단순한 에러페이지를 빠르게 제공
AWS CloudFront 및 S3를 통한 에러 페이지 설정
설정 방법 :
- S3에 파일을 업로드 하고 CloudFront를 배포를 생성해 로드밸런스를 원본으로 설정
- CloudFront의 에러 페이지 설정에서 HTTP 상태코드에 대해 S3 페이지 리다이렉션
장점
- 글로벌 네트워크를 통해 트래픽 증가에도 유연하게 대응할 수 있음
- 서버가 다운되어도 CloudFront와 S3가 에러페이지를 제공해 서비스 가용성이 유지
- 상태 코드에 따라 별도 에러페이지를 지정할 수 있음
단점
- 초기 설정 복잡
- 비용 발생
활용사례
- 확장성과 고가용성이 중요한 서비스 또는 트래픽이 많은 서비스에 적합
- 다중 HTTP 상태 코드에 따른 커스텀 에러페이지 제공이 필요한 경우