0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

セッションとクッキーの違い

0
Last updated at Posted at 2026-04-19

セッションはサーバーに保存されるもの、クッキーはブラウザに保存されるものと単純に覚えていたのですが、厳密にはそうではなかったので、両者の関係についてまとめていきます。

1 セッションとは

ユーザーがWebサイトを訪れてから、立ち去るまでの一連のやり取りを管理する「仕組み」のことです。
本来、Web通信(HTTP)は一回ごとに完結してしまい、相手が誰かを忘れてしまう性質を持っています。それを補い、「ログイン中である」といった状態をサーバー側で保持するのがセッションの役割です。

2 クッキーとは

サーバーから渡されるデータを、ユーザーの**ブラウザ側に一時的に保管しておくための「箱」**です。
ここにデータを保存しておくことで、次に同じサイトにアクセスした際、ブラウザが自動的にそのデータをサーバーへ送り返してくれます。

3 セッションID、クッキー、セッションの関係

冒頭でも述べたようにセッション⇒サーバー、クッキー⇒ブラウザという図式は、厳密ではありません。
なぜかというと、セッションがクッキーに依存しているからです。

Step 1. 初回訪問(鍵の発行とメモ帳の作成)

  • サーバー: ユーザーが来たら「セッションID(鍵)」を発行し、サーバー内に専用の「セッション(メモ帳)」を作ります。
  • ブラウザ: サーバーから送られてきた「セッションID(鍵)」を受け取ります。

Step 2. 保管(箱に入れる)

  • ブラウザ: 受け取った「鍵」を、ブラウザ内の「クッキー(箱)」に大切に保管します。

Step 3. 次回アクセス(鍵の提示)

  • ブラウザ: 再び同じサイトにアクセスする際、「クッキー(箱)」から「セッションID(鍵)」を取り出してサーバーに見せます。

Step 4. 照合

  • サーバー: 提示された鍵と、サーバーにあるメモ帳を照らし合わせます。

上記の結果、鍵からメモ帳を取り出すことで、前回ログイン時の状態(買い物かごの商品など)が維持されたまま、再度ログインできるという仕組みです。


まとめ

登場人物 役割 保存場所
セッションID サーバーのデータを開けるための「鍵」 クッキーの中(ブラウザ)
セッション ユーザーごとの秘密の「メモ帳」 サーバー
クッキー データを保存しておくための「箱」 ブラウザ
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?