본문 바로가기

모의해킹 스터디/Week4

HTTP 상태 라인, 상태 코드 정리

HTTP

http란 TCP/IP 프로토콜 기반으로 작동하며, 클라이언트와 웹 서버가 데이터를 주고 받기 위해 사용하는 통신 방식이다. 클라이언트는 웹 서버에 요청을 하고 웹 서버는 이에 대해 응답을 하는데, 각각의 패킷에서 존재하는 상태 라인 구조는 서로 다르다.

  • TCP(전송 제어 프로토콜)
  • IP(인터넷 프로토콜)

 

HTTP 상태 라인

1. 요청(Request) 헤더

웹 메소드/ 경로/ HTTP 프로토콜

  • 웹 메소드 : GET, POST 등의 방식으로 표현
  • 경로 : url 경로(index 페이지는 생략 가능)
  • HTTP 프로토콜 : 프로토콜 버전을 의미. HTTP/1.1, HTTP/2 등과 같은 방식으로 표현

ex) GET / HTTP/2

(위의 예시에서 index 페이지 경로는 생략됨)

 

2. 응답(Response) 헤더

HTTP 프로토콜/ 상태 코드

  • HTTP 프로토콜 : 요청 헤더와 동일
  • 상태 코드 : 1xx ~ 5xx 범위로 표현
  • 상태 설명(이유 구조) : 상태 코드의 의미를 더 자세하게 표현. OK, Not Found 형식

ex) HTTP/2 200 OK

 

HTTP 상태 코드

클라이언트가 보낸 요청에 대한 서버의 응답을 나타내는 3자리 범위의 코드

응답 중, 응답 완료, 오류 등 서버의 처리 결과를 숫자로 표현한다

  • 1xx : 클라이언트의 요청이 수신되고 처리가 진행중인 상태
  • 2xx : 요청이 성공적으로 처리 되었음을 나타냄
  • 3xx : 리소스가 다른 곳에 위치하거나 재요청을 할 필요가 있음을 나타냄
  • 4xx : 클라이언트의 요청에 오류가 있음을 나타냄, 클라이언트의 잘못된 요청 혹은 권한 부족
  • 5xx : 서버가 유효한 요청을 수행하지 못했음을 나타냄, 서버 내부의 오류