본문 바로가기

JSP/HTTP 기초 지식

JSP 프로그래밍 기본 - HTTP 응답

HTTP 응답은 HTTP 요청에 대한 결과를 반환하는 메시지이다. 요청을 수행했는지, 하지 않았는지, 안 했다면 이유는 무엇인지와 같은 상태 정보(Status), 그리고 클라이언트에게 전송할 리소스가 응답에 포함된다.

 

시작 줄

HTTP 응답의 시작 줄은 HTTP 버전, 상태 코드(Status Code), 그리고 처리 사유(Reason Phrase)로 구성돤다. 각각은 띄어쓰기로 구분된다.

 

HTTP 버전은 서버에서 사용하는 HTTP 프로토콜의 버전을 나타낸다. 그리고 상태 코드는 요청에 대한 처리 결과를 세 자릿수로 나타낸다. HTTP 표준인 RFC 2616은 대략 40여개의 상태 코드를 정의하고 있는데, 각각은 첫 번째 자릿수에 따라 5개의 클래스로 분류된다. 처리 사유는 상태 코드가 발생한 이유를 짧게 기술한 것이다.

 

상태 코드

1xx
요청을 제대로 받았고, 처리가 진행 중임

2xx
요청이 제대로 처리됨
200: 성공

3xx
요청을 처리하려면, 클라이언트가 추가 동작을 취해야 함.
302: 다른 URL로 갈 것

4xx
클라이언트가 잘못된 요청을 보내어 처리에 실패했습니다.
400: 요청이 문법에 맞지 않음
403: 클라이언트가 리소스에 요청할 권한이 없음
404: 리소스가 없음

5xx
클라이언트의 요청은 유효하지만, 서버에 에러가 발생하여 처리에 실패했습니다.
500: 요청을 처리하다가 에러가 발생함
503: 서버가 과부하로 인해 요청을 처리할 수 없음상태 코드

1xx
요청을 제대로 받았고, 처리가 진행 중임

2xx
요청이 제대로 처리됨
200: 성공

3xx
요청을 처리하려면, 클라이언트가 추가 동작을 취해야 함.
302: 다른 URL로 갈 것

4xx
클라이언트가 잘못된 요청을 보내어 처리에 실패했습니다.
400: 요청이 문법에 맞지 않음
403: 클라이언트가 리소스에 요청할 권한이 없음
404: 리소스가 없음

5xx
클라이언트의 요청은 유효하지만, 서버에 에러가 발생하여 처리에 실패했습니다.
500: 요청을 처리하다가 에러가 발생함
503: 서버가 과부하로 인해 요청을 처리할 수 없음
728x90