소개
이 문서에서는 HTTP 쿠키가 무엇이고 세션 쿠키와 영구 쿠키의 차이점에 대해 설명합니다.
배경 정보
쿠키는 웹 서버가 브라우저에 보내는 데이터 문자열입니다.나중에 브라우저가 동일한 도메인에서 개체를 요청하면 동일한 데이터 문자열을 원본 서버로 다시 보냅니다.
데이터는 웹 서버에서 "Set-Cookie"라는 HTTP 헤더 형식으로 전송됩니다. 브라우저는 쿠키를 "Cookie"라는 HTTP 헤더의 서버로 다시 전송합니다.
다음은 HTTP 쿠키 트랜잭션이 어떤 모습일지 보여주는 예입니다.
웹 서버의 HTTP 응답:
[...]
Set-Cookie: first.lastname
클라이언트에서 HTTP GET:
[...]
Cookie: first.lastname
샘플 트랜잭션에서 웹 서버는 클라이언트에 "first.lastname" 쿠키를 생성하도록 지시했습니다. 다음에 클라이언트가 이 도메인에서 개체를 요청할 때 요청과 함께 쿠키를 전송합니다.이는 웹 서버가 사용자 로그인과 같은 특정 정보를 회수할 수 있는 방법을 보여줍니다.
쿠키 유형
쿠키 유형에는 세션 쿠키와 영구 쿠키가 있습니다.쿠키에 만료 날짜가 포함되어 있지 않으면 세션 쿠키로 간주됩니다.세션 쿠키는 메모리에 저장되며 디스크에 기록되지 않습니다.브라우저가 닫히면 이 시점부터 쿠키가 영구적으로 손실됩니다. 쿠키에 만료 날짜가 있으면 영구 쿠키로 간주됩니다.만료에 지정된 날짜에 쿠키가 디스크에서 제거됩니다.
쿠키에는 세미콜론으로 구분하여 포함할 수 있는 여러 필드가 있습니다.정의는 다음과 같습니다.
만료
expires="Wdy, DD-Mon-YYYY HH:MM:SS GMT"
쿠키를 삭제할 시기를 결정합니다.
경로
경로=/
쿠키를 반환할 경로를 결정합니다.이 예에서는 도메인의 루트 경로로 이동할 때 쿠키가 전송됩니다.
도메인
domain=whether.domain.com
쿠키가 사용되는 도메인을 지정합니다.현재 찾고 있는 도메인과 일치하지 않으면 "타사 쿠키"로 간주되며 브라우저에서 거부됩니다.이렇게 하면 한 도메인에서 다른 도메인에 대한 쿠키를 설정할 수 없습니다.