티스토리 뷰

Dev/CS

[CS] 기본 정리 - HTTP

j.y.eunseo 2022. 11. 1. 18:36

# 프로토콜

## 프로토콜이란?

컴퓨터 내부에서 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체제.

기기 간 통신은 교환되는 데이터의 형식에 대해 상호 합의를 요구한다.

이러한 형식을 정의하는 규칙들의 집합을 프로토콜이라고 한다.

 

## HTTP 프로토콜이란?

HTTP 프로토콜이란, 웹에서 브라우저와 서버간에 데이터를 주고받기 위한 방식을 의미한다.

 

## HTTP 요청과 응답

client-sever 관계에서 request와 response가 이루어지는 것처럼 HTTP 요청과 응답도 동일하다.

여기서 client는 브라우저, server는 WAS(JSP, PHP ...)

 

## HTTP Request Message 구조

  • Start line(Request Line): HTTP Request의 첫 라인
    • HTTP Method: GET, POST 등과 같은 action
    • Request Target: request가 전송되는 URL (endpoint)
    • HTTP Version
      • 예) GET / doc/test/html HTTP/1.1
  • Headers: Request에 대한 meta 정보를 담고 있으며, key-value 값으로 되어 있다.
    • Host
    • User-Agent
    • Accept
    • Connection
    • Content-Type
    • Content-Length
  • Empty Line
  • Body

## HTTP Response Message 구조

request message 구조와 비슷


# 세션 session

## Session이란?

세션이란 일정 시간동안 같은 사용자(브라우저)로부터 들어오는 일련의 요구를 하나의 상태로 보고 그 상태를 일정하게 유지시키는 기술.

일정 시간이란 방문자가 웹 브라우저를 통해 웹 서버에 접속한 시점으로부터 웹 브라우저를 종료함으로써 연결을 끝내는 시점.

💡 즉, 방문자가 웹 서버에 접속해 있는 상태를 하나의 단위로 보고 세션이라고 칭한다.

 

## Session vs Cookie

### Cookie

쿠키는 특정 웹 사이트를 방문했을 때 만들어지는 정보를 담는 파일 (상태정보 유지 기술)

 

### Session

세션은 쿠키와 달리 사용자들의 로그인 정보에 대한 보안을 한층 업그레이드 할 수 있어 웹 사이트에 방문하여 계속 접속을 유지할 때 이전의 접속 정보를 이용할 수 있는 방법으로 많이 사용된다.

 

💡 쿠키의 경우 방문자의 정보를 방문자 컴퓨터의 메모리에 저장.
💡 세션은 방문자의 요청에 따른 정보를 웹 서버가 세션 아이디 파일을 만들어 서버에 저장.

 

## Session의 과정

  • 클라이언트가 웹 서버에 접근하여 페이지 요청.
  • 서버는 접근한 클라이언트의 쿠키를 확인 후 해당 session-id를 보냈는지 확인.
  • session-id가 없을 시 session-id를 생성하여 클라이언트에게 돌려준다.
댓글
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
최근에 올라온 글