受付番号から台帳を開こう
マコト
番号のカードが残っていても、まだ使えるかは別なんだね
イト
その番号の先に、続きの状態を見に行く場所があるの?
ピコ
うん。サーバー側で状態を扱うセッションの考え方が出てくるよ
Webの通信は、1回ごとのリクエストとレスポンスに分かれます。それでも、ログイン後に別のページへ移動してもログイン中として扱われることがあります。この「続いている状態」を扱うために、CookieやセッションID、サーバー側の記録などが組み合わされる場合があります。
第50話では、Cookieの受付番号からサーバー図書館の受付台帳へ進みます。画面のむこう側で、ログイン中の状態がどのように続いているのかを見ていきましょう。
Webのセッションとは|同じ利用の続きを扱う仕組み
セッションは、利用者とサービスのやり取りが続いている状態を扱う考え方です。
漫画:番号があるのに、またログイン? 全3ページ
練習問題の続きを開こうとしたユイ。さっきログインしたはずなのに、もう一度ログインを求められました。ピコと一緒に、番号の先をたどります。
画像を押すと拡大できます。+/−で大きさを変え、拡大中はドラッグして読めます。
サーバー側で状態を管理する方式を描いた創作漫画です。カードと台帳は説明のためのたとえで、A7は短くした架空の記号です。実際のセッションIDや画面を再現したものではありません。
番号だけでなく、対応する記録がまだ使えるかを確かめる。それがこの例のポイントです。自分でログアウトした場合はどうなるのか、セッションの終了とログアウトも見てみましょう。
たとえば、ログイン後にマイページを開く、カートに商品を入れたまま別ページへ移動する、管理画面で作業を続ける、といった場面で「さっきの続き」として扱うために使われます。
サーバー側で状態を管理する方式を、ラボでは受付にたとえます。Cookieは番号を書いたカード、セッションIDはその番号です。サーバー側は番号に対応する台帳の記録を見て、ログイン中か、続きとして扱えるかを判断します。

セッションが必要になる場面
Webでは、ページを開くたびにリクエストが送られます。何もしなければ、それぞれのリクエストは別々のお願いに見えます。
それでもサービスでは、次のような「続き」が必要になります。
| 場面 | 続きとして扱いたいこと |
|---|---|
| ログイン後のページ移動 | 同じ利用者がログイン中であること |
| カート | 入れた商品が次のページでも残ること |
| 管理画面 | 作業中の権限や状態が続くこと |
| 入力フォーム | 途中の確認や戻る操作を扱うこと |
| チャットや通知 | 同じ利用者のやり取りとして扱うこと |
ログイン前のカートなど、アカウントを確認していない利用でもセッションを使う場合があります。「誰のアカウントか」と「どの利用の続きか」は別の問いです。逆に、同じアカウントでスマホとPCを使い、別々のセッションを持つ場合もあります。
どの状態をいつまで保つかは、サービスの設計によって変わります。セッションには期限があり、いつまでも同じ利用の続きとして扱われるわけではありません。
Cookie・セッションID・サーバー台帳の役割
Cookieとセッションはよく一緒に出てきます。
先に小さな記録の置き場所を確認したい場合は、Cookieとは を見ると、ブラウザ側とサーバー側の分担がつかみやすくなります。
よくある形では、ブラウザのCookieにセッションIDのような番号が入り、サーバー側がその番号を見て台帳を探します。台帳の中には、ログイン中かどうか、利用者の権限、作業中の状態などが置かれる場合があります。
| 役割 | たとえ | 実際の例 |
|---|---|---|
| Cookie | 番号を書いたカード | ブラウザに保存する小さな記録。セッションIDを入れる場合がある |
| セッションID | カードに書かれた番号 | 対応するセッションを見分ける識別子 |
| サーバー側のセッション情報 | 台帳にある、その番号の記録 | ログイン中かどうかなど、続きとして扱う状態 |
Cookieの中に状態をどこまで持つか、サーバー側にどこまで持つかはサービスによって変わります。ここでは、番号を手がかりにサーバー側の状態を調べる方式を例にしています。セッションという考え方そのものが、台帳という一つの保存物を指すわけではありません。
ユイ
セッションIDは、状態そのものではなく台帳を探す番号になることがあるんですね
ピコ
そう。番号と台帳を分けると、Cookieとの違いも見えやすくなるよ
ログイン中が続く流れ
ログイン中が続く流れを、ざっくり分けると次のようになります。
- 利用者がログイン情報を送る
- サーバーが確認し、続きの状態を作る
- ブラウザにセッションIDなどの手がかりを渡す
- 次のリクエストで、その手がかりが送られる
- サーバーが台帳を見て、ログイン中として扱う
この流れはサービスによって細部が変わります。けれど、画面上では「ログインしたままページを移動できる」という形で見えます。見えている結果の裏側で、ブラウザの手がかりとサーバー側の状態が組み合わされている場合があります。

セッション切れ・ログアウトで何が変わる?
セッションには、期限や終了の考え方があります。
一定時間操作しないとログイン画面に戻ることがあります。これは、セッションが期限切れになったり、サーバー側の状態が終了したりするためです。ログアウト操作をすると、サービス側でセッションを終わらせる場合があります。
セッション切れで起きやすいことは、次のようなものです。
- ログイン画面へ戻る
- 入力途中の内容が失われる場合がある
- 「セッションが切れました」と表示される
- 管理画面で操作をやり直す必要が出る
- 別タブや別端末で状態が変わる場合がある
ログイン状態をいつまでも残さないようにすることが、期限を設ける理由の一つです。サーバー側でセッションが無効になれば、ブラウザに番号が残っていても、その番号ではログイン中として扱われなくなります。
タブを閉じただけで、サービス側のセッションが必ず終了するとは限りません。共有端末では、利用したサービスからログアウトします。また、セッションの終了は、アカウントに保存済みの注文や作品をすべて消す操作とは別です。
セッションで困ったときの見方
セッション関連のトラブルでは、画面に見えている現象から切り分けます。
たとえば、何度もログイン画面に戻る場合は、Cookieが保存できていない、サーバー側のセッションが短い、別のタブや端末でログアウトした、ブラウザ設定や拡張機能が影響している、といった候補があります。
確認するときは、次を分けます。
- Cookieが保存されているか
- ログアウト操作をしていないか
- 操作しない時間が長くなかったか
- 別ブラウザや別端末でも同じか
- サービス側の障害や設定変更がないか
利用者としては、再ログイン、Cookie設定の確認、別ブラウザでの確認が入口になります。運用者としては、セッション期限、Cookie設定、ログアウト処理、サーバー側の保存先などを見ます。
Cookie・番号・続きの状態を分けてみる
次の三つを分けて説明してみましょう。
- Cookie: __________
- セッションID: __________
- セッション: __________
答えの例は、Cookieはブラウザの小さな記録、セッションIDは台帳を探す番号、セッションは続いている状態を扱う考え方です。
ミニクイズ:番号と状態、期限切れを確かめる
Q1. セッションを一文でいうと?
セッションは、ログイン中など、利用者とサービスのやり取りが続いている状態を管理する考え方です。
Q2. Cookieとセッションは同じものですか?
いいえ。Cookieはブラウザに残る小さな記録、セッションは続きの状態を扱う考え方です。CookieにセッションIDが入る場合があります。
Q3. セッション切れでは何が起きますか?
ログイン画面へ戻る、入力途中の内容が失われる、操作のやり直しが必要になる、といったことがあります。
この記事の情報・用語を確認する
読了目安 10分 / 更新日
TERM PRIMER
セッション|この記事で使った言葉
LAB WHITEBOARD
セッションを一文で説明してみよう
「セッションがログイン中の状態を扱う仕組みであること、Cookieとの関係、期限切れやログアウトで起きることを説明できるようになる。」を、いまの自分の言葉で一文にしてみてください。途中の説明でも大丈夫です。







