FutureInfra 무료로 시작
용어집

세션

세션(session)은 웹사이트가 '방금 로그인한 그 사람'을 기억하려고 서버에 만들어 두는 이용 기록이에요. 브라우저는 세션 번호만 쿠키에 담아 요청마다 보내요.

목차 보기

세션(session)은 웹사이트가 "방금 로그인한 그 사람"을 기억하려고 서버에 만들어 두는 이용 기록이에요. 옷 보관소와 비슷해요. 옷(내 정보)은 보관소(서버)에 두고, 나는 번호표(세션 ID)만 들고 다녀요. 번호표를 보여 주면 내 옷을 찾아 줘요.

한눈에 보기

  • 웹은 원래 요청 하나하나를 따로 처리해서 앞 요청을 기억하지 못해요. 세션이 그 빈틈을 메워요.
  • 로그인하면 서버가 세션 ID 를 만들어 쿠키로 주고, 브라우저는 요청마다 그 쿠키를 다시 보내요.
  • 직접 만든 연습 서버에서 쿠키 없이 물으면 401, 쿠키를 보내면 200 이 나왔어요.
콘솔에서 AI 라우터 열기
300종 넘는 모델을 키 하나로 · 쓴 만큼 원화로
AI 라우터 열기 →모델·가격

로그인 세션은 어떻게 돌아가요?

  1. 아이디·비밀번호로 로그인해요.
  2. 서버가 맞는지 확인하고, 아무도 맞힐 수 없는 긴 무작위 번호(세션 ID)를 만들어요. "이 번호 = 이 사람"을 서버 저장소에 적어 둬요.
  3. 서버는 응답 머리글 Set-Cookie 로 번호를 브라우저에 줘요.
  4. 브라우저는 그 사이트에 갈 때마다 번호를 Cookie 머리글에 실어 보내요.
  5. 서버는 번호로 저장소를 찾아 "아, 그 사람"이라고 알아봐요. 로그아웃하면 저장소에서 지워요.

직접 만들어 봤어요

원리를 보려고 파이썬 기본 기능만으로 20줄짜리 연습 서버를 만들어 2026년 10월 29일 우리 PC 에서 돌렸어요. /login 에 요청하면 세션을 만들고, /me 에서 누구인지 알려 줘요.

$ curl -s http://127.0.0.1:18923/me            # 쿠키 없이
{"error": "not logged in"}
[HTTP 401]

$ curl -s -i -c jar.txt -X POST http://127.0.0.1:18923/login
HTTP/1.0 200 OK
Set-Cookie: sid=QwZ8RM…(가림); HttpOnly; SameSite=Lax; Path=/
{"login":"ok"}

$ curl -s -b jar.txt http://127.0.0.1:18923/me   # 받은 쿠키를 다시 보냄
{"user": "demo"}
[HTTP 200]

같은 /me 주소인데 쿠키(번호표)가 있느냐에 따라 401(누구세요?)과 200(demo 님이군요)으로 갈렸어요. 서버가 기억하는 건 번호와 사람의 짝이고, 브라우저가 가진 건 번호뿐이에요.

콘솔에서 AI 라우터 열기
300종 넘는 모델을 키 하나로 · 쓴 만큼 원화로
AI 라우터 열기 →모델·가격

실제 사이트는 어떻게 줘요?

같은 날 GitHub 첫 화면을 받아 보니 이런 쿠키를 줬어요(값은 가렸어요).

$ curl -sI https://github.com/ | grep -i set-cookie
Set-Cookie: _gh_sess=…; path=/; HttpOnly; secure; SameSite=Lax
Set-Cookie: logged_in=no; expires=Fri, 29 Oct 2027 …; HttpOnly; secure; SameSite=Lax

_gh_sess 에는 만료일(expires)이 없어요. 만료일이 없는 쿠키는 브라우저를 닫으면 사라져서 "세션 쿠키"라고 불러요. 붙어 있는 속성은 각각 이런 뜻이에요.

속성뜻
HttpOnly페이지 안 스크립트가 쿠키를 읽지 못하게 막아요. 악성 스크립트에 번호표를 뺏기지 않게요
SecureHTTPS 로만 보내요. 중간에서 엿보지 못하게요
SameSite=Lax다른 사이트가 몰래 보낸 요청에는 쿠키를 잘 안 붙여요
expires / Max-Age언제까지 보관할지예요. 없으면 브라우저를 닫을 때 지워요

세션과 쿠키는 뭐가 달라요?

구분세션쿠키
어디에서버내 브라우저
무엇을누가 로그인했는지 같은 실제 정보세션 ID 같은 작은 값(쿠키 하나에 보통 4KB 안팎)
끝나는 때로그아웃, 일정 시간 아무것도 안 할 때정한 만료일, 또는 브라우저를 닫을 때
관계쿠키 속 번호로 찾아요세션을 찾는 번호표를 들고 다녀요

"세션이 만료되었습니다"는 왜 떠요?

  • 오래 가만히 있었을 때 — 사이트가 정한 시간(예: 30분) 동안 아무 요청이 없으면 서버가 세션을 지워요. 은행·관리자 화면은 더 짧아요.
  • 쿠키를 지웠을 때 — 번호표를 버렸으니 다시 로그인해야 해요.
  • 다른 곳에서 로그인했을 때 — 한 계정에 세션 하나만 허락하는 사이트도 있어요.
  • 서버를 다시 켰을 때 — 세션을 서버 메모리에만 두면 재시작할 때 모두 사라져요. 위 연습 서버도 그래요.

다른 뜻의 "세션"도 있어요

쓰는 곳뜻
웹 로그인이 글의 뜻. 로그인 상태를 기억하는 서버 쪽 기록
구글 애널리틱스(GA4)한 사람이 사이트에 들어와 머문 한 번의 방문. 기본값은 30분 동안 활동이 없으면 끝나요
SSH·터미널서버에 접속해 있는 동안의 연결 한 번

자주 하는 오해와 주의

  • 쿠키에 비밀번호가 들어 있다 — 제대로 만든 사이트는 번호표(세션 ID)만 넣어요.
  • 세션 ID 는 보여 줘도 된다 — 번호표를 가진 사람은 로그인한 것처럼 행동할 수 있어요. 개발자 도구 화면을 캡처해 올릴 때 쿠키 값은 가리세요.
  • 로그아웃 대신 창만 닫으면 된다 — 만료일이 있는 쿠키는 남아요. 공용 PC 에서는 꼭 로그아웃하세요.

퓨쳐인프라에서는

퓨쳐인프라 콘솔은 이메일·비밀번호에 더해 인증 앱 코드로 한 번 더 확인하는 2단계 인증을 쓸 수 있어요. 휴대폰이 없을 때를 위해 백업 코드도 있어요. 번호표를 받기 전 문을 한 겹 더 두는 셈이에요.

직접 로그인 기능이 있는 앱을 만들었다면 앱 호스팅에 올리면 HTTPS 주소가 같이 붙어요. Secure 쿠키는 HTTPS 에서만 오가니 처음부터 HTTPS 로 시작하는 게 좋아요. 가입하면 2,000원 크레딧이 들어와요.

HTTPS 가 붙은 주소로 내 앱 올리기

앱 호스팅 보기 →

앱 1개 월 5,500원 · 가입하면 2,000원 크레딧

자주 묻는 질문

세션 방식과 토큰(JWT) 방식은 뭐가 달라요?

세션은 서버가 기록을 들고 있고 브라우저는 번호만 가져요. JWT 는 정보와 서명을 담은 토큰을 브라우저가 들고 다니고, 서버는 서명만 확인해요.

세션 유지 시간은 얼마가 적당해요?

사이트 성격에 따라 달라요. 돈이 오가는 화면은 짧게, 일반 서비스는 길게 두고 '로그인 유지' 선택지를 주는 경우가 많아요.

세션 하이재킹이 뭐예요?

남의 세션 ID 를 훔쳐 그 사람인 척 접속하는 공격이에요. HTTPS, HttpOnly·Secure 쿠키, 로그인 때 세션 ID 새로 발급하기로 막아요.

시크릿 창에서는 왜 로그인이 안 남아요?

시크릿 창을 닫으면 그 창의 쿠키가 모두 지워져서 번호표가 사라지기 때문이에요.

관련 용어

캐시 · OAuth · 2단계 인증 · 해시 · 500 에러

이 글의 숫자 출처

  • 연습 서버·curl: 우리 PC(Windows, Python 3.12.8, curl 8.17), 2026-10-29. 코드는 원리 설명용이에요.
  • 실제 쿠키: GitHub·Google 응답 머리글을 curl 로 확인(2026-10-29 22:54 KST), 값은 가림
  • 쿠키 규칙: MDN — HTTP 쿠키 · RFC 6265
  • GA4 세션: Google 애널리틱스 고객센터
이 글에 대하여
  • 작성: 서순명(솔리드그루 이사 · 퓨쳐인프라 — 국내 IDC 에서 클라우드 서버·앱 호스팅·AI API 를 운영) · 작성일 2026-10-29
  • 운영사: 솔리드그루 · 사업자등록번호 875-44-00335 · 서울특별시 구로구 디지털로29길 38, 7층 707호 · 전화 02-6933-6229 · support@futureinfra.ai · 고객센터 · 이용약관
  • 한계: 연습 서버는 원리를 보여 주려고 만든 20줄짜리 코드라 실제 서비스에 쓰면 안 돼요. 실제 사이트의 쿠키 값은 가렸어요.
  • 이해관계: 퓨쳐인프라 콘솔 로그인 방식을 언급했어요(자사 서비스).
콘솔에서 AI 라우터 열기
300종 넘는 모델을 키 하나로 · 쓴 만큼 원화로
AI 라우터 열기 →모델·가격

연관 서비스

요금 확인하기 →부가세 포함 · 분 단위 · 월 구독 없음

연관 글

클라우드플레어 장애 확인·대비법 2026, 사후 보고서 5건 정리

클라우드플레어가 터졌는지 1분 안에 가리는 법(상태 페이지·오류 화면·nslookup·curl), 2025~2026년 큰 장애 5건의 공식 사후 보고서, 같이 멈추지 않게 미리 해 둘 대비책을 서울에서 직접 잰 결과와 함께 정리했어요.

포트폴리오 사이트 만들기 2026 — 직군별 구성, 노션·깃허브·빌더 비교, 1년 비용

개발자·디자이너·기획자 포트폴리오에 무엇을 넣을지 정리하고, 직군별 예시 3개를 직접 만들어 봤어요. 작업 사진 6장을 WebP 로 바꾸니 8.8MB 가 92KB 로 줄었어요. 노션·깃허브 페이지·프레이머·어도비 포트폴리오·윅스·직접 만들기를 2026-11-03 공식 요금으로 비교하고, 내 도메인 연결 값까지 정리했어요.

무료 웹호스팅·무료 홈페이지 추천 2026 — 10곳 광고·트래픽·상업적 이용 비교, 서울 속도 실측

깃허브 페이지·클라우드플레어·넷리파이·버셀·파이어베이스·렌더·닷홈·인피니티프리와 윅스·워드프레스닷컴 무료 요금제를 2026-11-03 공식 화면으로 비교했어요. 광고·주소, 트래픽 한도(1MB 페이지면 몇 명), 넘으면 어떻게 되는지, 장사에 써도 되는지를 원문으로 정리하고 서울에서 응답 속도를 직접 쟀어요.

국내 클라우드 서버 비교 2026 — 4코어·8GB 월 5.5만~17만 원, 6곳 요금표

네이버클라우드·KT클라우드·NHN클라우드·가비아·iwinv·퓨쳐인프라(자사) 6곳을 같은 사양, 부가세 포함으로 맞춰 비교했어요. 2026-11-03 공식 요금표로 1코어·2코어·4코어 서버의 한 달 값과 트래픽 초과 요금까지 계산했어요.

Vercel 사용법·요금 2026 — 무료 Hobby 한도로 한 달 몇 명까지 버틸까

버셀(Vercel) 무료 Hobby 한도(요청 100만 번·전송 100GB)가 실제 페이지 뷰로 얼마인지 데모 사이트 7곳 무게로 계산하고, 서울에서 속도를 재 봤어요. 2026년 11월 공식 요금(Pro $20·크레딧·정액 CDN), 가입 없이 배포하는 법, 한도를 넘으면 생기는 일, 자주 막히는 곳을 정리했어요.

많이 본 글

  1. 블로그 무료 도메인 사이트 추천 2026 — 내도메인.한국·DuckDNS 발급 방법 내도메인.한국·DuckDNS 처럼 계속 무료인 주소 10곳을 11월 3일 서울에서 다시 재고(6곳 6ms 안), 발급 순서·구글·네이버 무료 주소·'첫해 무료'의 2년째 값까지 정리했어요.
  2. 블로그 도메인 구매 사이트 추천 2026 — 가비아·후이즈 등 15곳 갱신·이전비 비교 같은 .co.kr 도 등록업체 15곳의 3년 값이 3.8만~8.6만 원이에요(11월 3일 KRNIC 표). 갱신가·이전비·해외 업체 조건, 11월 인상 뒤 가비아 실제 화면, 구매처 확인과 기관이전까지 정리했어요.
  3. 블로그 클로드 MCP·Gemini MCP 연동 방법 2026, MCP 서버 9곳 클로드 MCP(데스크톱·Claude Code)와 Gemini MCP 연동(Gemini CLI·안티그래비티·Gemini 앱·API) 등 9곳의 MCP 서버 연결법을 공식 문서로 정리했어요. 원격 57ms 실측과 오류 해결까지.
  4. 블로그 Gemini 3.9 Flash 나왔나요? 지금 최신은 3.8 Flash — 3.7과 직접 잰 속도·비용 2026년 9월 22일 기준 Gemini 3.9 Flash는 미출시입니다. 최신 3.8 Flash의 사양·가격(2027년 2배 인상)과, 3.7 Flash와 같은 과제로 직접 잰 속도·비용·JSON 형식 준수 차이를 정리했습니다.
  5. 블로그 서버비 한 달 얼마? 방문자 10만 명도 월 3만 2천 원(2026 계산) 월 방문자 1천·1만 명은 1만 4천 원, 10만 명은 3만 2천 원이에요. 요금제별 트래픽 기본 제공량까지 넣어 다시 계산하고 AWS·카페24·가비아·네이버클라우드 값과 숨은 비용을 비교했어요(2026-10-26 확인).

이 글을 언급한 글

댓글 0

  1. 첫 댓글을 남겨 주세요.

← 목록으로