• 회원가입
  • 로그인
  • 구글아이디로 로그인

[web] 쿠키, 세션, 캐시(=캐싱) (정의, 장점, 단점) 차이점/비교

14,678  

목차

  1. 쿠키 (cookie)
  2. 세션 (session)
  3. 세션 쿠키 (session cookie)
  4. 보안 상 더 취약한 쿠키를 사용하는 이유
  5. 캐시 (cache) = 캐싱 (caching)

 

 

쿠키 (cookie)

 

쿠키사용자의 특정 취향 정보를 사용자의 컴퓨터텍스트로 저장시킨 파일.  

 



1.

보안에 취약.


2.

PC방 등의 공공장소에서 로그인할 때 쿠키를 사용한다면, 
이름, 연락처, 주민번호, 아이디, 비밀번호와 같은 개인정보가 PC방 컴퓨터에 저장되어 해킹 등에 악용 가능.

3.
쿠키 굽기 : 
setcookie() 함수 이용.
쿠키 호출 : 
$_COOKIE['변수명'] 변수 이용.

(예) 
쇼핑몰 장바구니처럼 한번 쓰고 버려도 상관 없거나, 
사용자가 원하는 스타일의 레이아웃 설정값을 저장할 때 사용.

 

4.

지정 기간 동안 보관.

브라우저 닫혀도 유지.

 

 

세션 (session)

 
세션은 두 컴퓨터 간 활성화 된 접속 의미. (※ 특정 접속자 식별 도구)



1.
서버 저장되어 현재 사용자만이 인증 받음. 
 
2.
세션만으론 사용자를 구별할 수가 없어 사용자별로 세션값을 하나 만들고, 
그 세션값에 대응하는 사용자의 브라우저에 쿠키를 만들어 동일 여부 체크해 로그인 여부를 판별.

3.
그누보드 경우,
/data/session 폴더에 로그인한 사용자의 세션이 암호화된 파일로 저장되어 있음.

4.
로그아웃 버튼을 클릭하면 세션을 끊어서 해당 컴퓨터에 사용자 정보를 남기지 않으며, 
서버 내에 어떠한 이동이나 액션이 발생하지 않으면, 
서버에서는 사용자가 로그아웃한 것으로 간주하여 세션을 삭제하기도 함. 

5.
한 마디로, 세션이 쿠키보다 보안이 뛰어나다고 볼 수 있음. 

예:
로그인 여부 체크,  주로 은행권에서 이용. "XXX초 뒤에 사이트에서 자동 로그아웃.
 
 

세션 쿠키 (session cookie)

 

세션(Session)과 쿠키(Cookie)는 웹 애플리케이션에서 사용자 상태를 유지하기 위한 기술임. 이 둘은 서로 다른 목적으로 사용되며, 개별적으로도 사용될 수 있지만 종종 함께 사용됨. 이때 세션과 쿠키를 함께 사용하면 세션 쿠키(Session cookie)라는 용어를 사용하기도 함.


세션은 서버 측에서 상태 정보를 관리하는 기술로, 사용자가 웹 사이트에 접속한 시점부터 브라우저를 종료할 때까지 유지됨. 이를 이용하여 로그인 정보나 장바구니 정보 등의 사용자 상태 정보를 저장하고 관리할 수 있음.


쿠키는 클라이언트 측에서 상태 정보를 관리하는 기술로, 사용자의 브라우저에 저장됨. 쿠키를 사용하면 사용자의 브라우저가 서버에 요청을 보낼 때마다 해당 쿠키를 함께 전송하게 되므로, 서버는 이를 이용하여 사용자를 식별하거나 이전 상태를 파악할 수 있음. (예) 자동 로그인 기능을 구현하기 위해서는 쿠키를 사용하여 사용자의 로그인 상태를 유지 가능함.


세션 쿠키는 이 두 기술의 장점을 합쳐 사용하는 기술임. (즉, 세션 정보를 서버에 저장하면서, 클라이언트 측에서는 세션 ID만을 쿠키에 저장함.) 이렇게 함으로써, 사용자는 매 요청마다 쿠키에 저장된 세션 ID를 서버로 전송하게 되며, 서버는 해당 세션 ID를 이용하여 세션 정보를 식별하고 관리함. 이러한 방식으로 세션과 쿠키의 각각의 장점을 최대한 활용 가능함.

 

 

보안 상 더 취약한 쿠키를 사용하는 이유


서버 성능 향상 (= 서버에 무리한 부담 주는 것 회피) 위함. 

세션은 서버에 저장되어 메모리 차지해서 많은 자료 쌓이면 문제 됨. 
그래서, 
로그인에는 보안에 취약한 쿠키 대신 세션을 사용하고, 
보안 관련없는 장바구니나 팝업 등에는 쿠키 주로 사용.

출처: l2zeo 님

캐시 (cache) = 캐싱 (caching)

 

CSS, JS 등 용량 큰 파일이나 홈페이지 관리자가 설정한 값을 사용자의 브라우저에 저장시킨 것.

 



1.
장점 : 트래픽 절감 및 빠른 로딩 속도에 도움,
단점 : 소스 바뀐 걸 사용자가 바로 확인 불가.

2.
캐시 삭제 방법
① 사용자가 Ctrl + F5 입력.
② 서버에서 캐시만료기간 설정.


3.
쿠키 : 사용자 개인정보를 저장.
캐시 : 
CSS, JS 등 홈페이지 설정값 저장.

 



분류 제목
web 웹사이트 로딩속도체크 (= 홈페이지로딩 지연원인 찾기)
web 홈페이지 운영 중요 고려 사항
web GUI, CLI 개념 (= 의미, 뜻)
web SQL - MySQL 5.7 my.cnf 파일 위치 + 도움말보기
web 호스팅종류 ★ (웹호스팅/가상호스팅/클라우드호스팅/서버호스팅/이미지호스팅/코로케이션/나스)
web 무료홈페이지빌더 사이트모음 ★ (=빌더추천 = 빌더종류 = 홈페이지빌더모음 = 프레임워크종류)
web PHP or 연산자 || 키보드 입력법
web 줄바꿈 기호 (CR, LF, CRLF) 의미 (= 개행문자 = 새줄문자)
web 페이스북, 트위터 가입 및 시작 방법
web SSH 추천 콘솔 다운로드 (PuTTY , Xshell , poderosa , MobaXterm , Sec… 설문 중
web 스팸차단/스팸방어/스팸관리/스팸삭제/스팸제거/스팸해결/스팸방지/스패머차단 (프로그램 다운로드 + 그누보드5 …
web 네이버톡톡 (무료 채팅) 시작하는 방법
web 웹사이트 통째로 긁어오는 프로그램 소개
web SFTP와 FTP의 차이 ★
web 윈도우10 - 이모지 (Emoji) (입력법 + 웹에 적용) 2
web CSS - 키프레임을 이용한 눈 내리는 효과 (Keyframe, Snow, Effect)
web 유튜브 썸네일생성 + 유투브 썸네일사이즈 (= 썸네일크기 = 썸네일종류 = 썸네일해상도) + 썸네일주소 (y…
web SSL어떻게 적용하는건가요 방법좀.. 6
web 홈페이지, 블로그, 카페 중 어떤 걸 선택해 운영할 것인가?
web 윈머지 다운로드 및 사용법 + 한글깨짐에러해결 (Winmerge Download How to use) ※ 파…
17/19
목록
찾아주셔서 감사합니다. Since 2012