📚 Computer Science/Network

[모든 개발자를 위한 HTTP 웹 기본 지식] 6. HTTP 상태코드 - 4XX 클라이언트 오류, 5XX 서버 오류

ryang x2 2023. 8. 14. 21:47
728x90
반응형

인프런 김영한님 [모든 개발자를 위한 HTTP 웹 기본 지식] 강의를 듣고 정리한 내용입니다.😊😊

 

1. 4XX (Client Error) - 클라이언트 오류 

- 클라이언트의 요청에 잘못된 문법등으로 서버가 요청을 수행할 수 없음

- 오류의 원인이 클라이언트에 있음 

- ⭐⭐ 클라이언트가 이미 잘못된 요청, 데이터를 보내고 있기 때문에, 똑같은 재시도가 실패함

 

 

👉 400 Bad Request 

클라이언트가 잘못된 요청을 해서 서버가 요청을 처리할 수 없음 

- 요청 구문, 메시지 등등 오류

- 클라이언트는 요청 내용을 다시 검토하고, 보내야함

   ex) 요청 파라미터가 잘못되거나, API 스펙이 맞지 않을 때

 

 

👉 401 Unauthorized

클라이언트가 해당 리소스에 대한 인증이 필요함

- 인증(Authentication) 되지 않음

- 401 오류 발생시 응답에 WWW-Authenticate 헤더와 함께 인증 방법을 설명

- 참고

  • 인증(Authentication): 본인이 누구인지 확인, (로그인)

  • 인가(Authorization): 권한부여 (ADMIN 권한처럼 특정 리소스에 접근할 수 있는 권한, 인증이 있어야 인가가 있음)

  • 오류 메시지가 Unauthorized 이지만 인증 되지 않음 (이름이 아쉬움)

 

 

👉 403 Forbidden

서버가 요청을 이해했지만 승인을 거부함

- 주로 인증 자격 증명은 있지만, 접근 권한이 불충분한 경우

  ex) 어드민 등급이 아닌 사용자가 로그인은 했지만, 어드민 등급의 리소스에 접근하는 경우

 

 

👉 404 Not Found

요청 리소스를 찾을 수 없음

- 요청 리소스가 서버에 없음

- 클라이언트가 권한이 부족한 리소스에 접근할 때 해당 리소스를 숨기고 싶을 때

 

 

2. 5XX (Server Error) - 서버 오류

- 서버 문제로 오류 발생

- 서버에 문제가 있기 때문에 재시도 하면 성공할 수도 있음(복구가 되거나 등등)

 

 

👉 500 Internal Server Error

서버 문제로 오류 발생, 애매하면 500 오류

- 서버 내부 문제로 오류 발생 

- 애매하면 500 오류

 

 

👉 503 Service Unavailable

서비스 이용 불가

- 서버가 일시적인 과부하 또는 예정된 작업으로 잠시 요청을 처리할 수 없음 

- Retry-After 헤더 필드로 얼마뒤에 복구되는지 보낼 수도 있음

 

 


 

❓ 질문 정리 ❗

Q. 구글에서 검색해서 나온 페이지를 클릭해 들어가면 404 Not Found가 뜨는 경우는 리소스가 있는데 리소스를 숨기는 건가요?

이 경우는 대부분 검색 엔진이 크롤링 하는 단계에서는 리소스가 있었는데, 이후 리소스가 사라져 404 Not Found가 뜨는 것이다.

[출처] https://www.inflearn.com/questions/152077

728x90
반응형