[8주차] Cookie와 Session, 주소 체계(MAC주소, IP 주소)
쿠키와 세션은 웹 개발에서 사용되는 중요한 개념으로, 웹 브라우저와 서버간의 상호작용을 가능하게 해주는 기술이다.
쿠키(Cookie)
- 서버에서 웹 브라우저로 보내는 작은 데이터 조각
- 보통 웹사이트 방문 기록, 로그인 정보, 사용자 설정 등을 저장한다.
- 쿠키는 클라이언트(웹 브라우저)에 저장되어 다음에 같은 웹사이트를 방문할 때에도 사용된다.
- 즉, 쿠키는 클라이언트 측에서 저장/관리되며, 클라이언트가 요청할 때마다 서버로 전송된다.
- 동일 사이트 재방문 시 클라이언트의 pc에 해당 쿠키가 있는 경우, 요청 페이지와 함께 쿠키를 전송한다.
세션(Session)
- 서버에서 클라이언트의 상태를 관리하기 위한 일련의 절차
- 일정 시간동안 같은 사용자(브라우저)로부터 들어오는 일련의 요구를 하나의 상태로 보고, 그 상태를 일정하게 유지하는 기술
- 방문자가 웹서버에 접속해 있는 상태를 하나의 단위로 보고 그것을 세션이라 부른다.
- 클라이언트가 웹사이트에 접속하여 특정 페이지나 서비스를 이용할 때 서버는 클라이언트에게 고유한 세션 ID를 부여하여 이를 쿠키에 저장하고, 클라이언트는 이 세션 ID를 이용하여 서버와 통신한다.
- 서버는 세션 ID를 기반으로 클라이언트의 상태를 유지/관리한다. 세션은 일정 기간이 지나면 만료되고, 클라이언트는 새로운 세션 ID를 받아야 한다.
쿠키와 세션은 각각 다른 목적과 사용법을 가지고 있다. 쿠키는 클라이언트 측에서 관리되기 때문에 브라우저에서 삭제/변경이 가능하다. 반면 세션은 서버 측에서 관리되기 때문에 클라이언트가 변경할 수 없다. 따라서 보안상 이유로 민감 정보(ex.비밀번호)를 다룰 때는 세션을 사용하는 것이 좋다.
▷ 그렇다면 굳이 쿠키를 사용하는 이유?