카테고리 없음

사용자 에러페이지 구축하기

autumn-code 2024. 11. 5. 16:30

AWS 사용자에러페이지

서비스 장애 시 사용자에게 안내를 제공하는 에러페이지

 

방법 :

  1. Apache 서버에서 에러 페이지 설정
  2. 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. 설정 파일에서 손쉽게 에러 페이지를 설정할 수 있어 인프라 구성이 필요없음
  2. 추가적인 서비스 비용이 필요없음
  3. 서버에서 직접 제어 가능하고 상세 코드별 세밀한 제어 가능

단점

1. 모든 에러 페이지 요청을 서버가 처리해야하므로 고트래픽 상황에서 서버 부하가 증가할 수 있음

  1. 서버 자체가 장애 상태가 되면 에러페이지 제공 불가
  2. 고트래픽 서비스에서 부하 분산 및 가용성 유지가 어려움

 

활용 사례

  1. 소규모 웹 애플리케이션이나 고가용성이 요구되지 않는 서비스
  2. 단순한 에러페이지를 빠르게 제공

 


AWS CloudFront 및 S3를 통한 에러 페이지 설정

설정 방법 :

  1. S3에 파일을 업로드 하고 CloudFront를 배포를 생성해 로드밸런스를 원본으로 설정
  2. CloudFront의 에러 페이지 설정에서 HTTP 상태코드에 대해 S3 페이지 리다이렉션

장점

  1. 글로벌 네트워크를 통해 트래픽 증가에도 유연하게 대응할 수 있음
  2. 서버가 다운되어도 CloudFront와 S3가 에러페이지를 제공해 서비스 가용성이 유지
  3. 상태 코드에 따라 별도 에러페이지를 지정할 수 있음

단점

  1. 초기 설정 복잡
  2. 비용 발생


활용사례

  1. 확장성과 고가용성이 중요한 서비스 또는 트래픽이 많은 서비스에 적합
  2. 다중 HTTP 상태 코드에 따른 커스텀 에러페이지 제공이 필요한 경우