Set-Cookie Conflict Checker

「同名Cookieが複数あり挙動が不安定」な症状を、Domain/Path/Secureの組み合わせ単位で可視化して切り分けます。

状態

ブラウザ内で処理します。入力はサーバーへ送信しません。Cookie競合の一次切り分けに使えます。

使い方

Set-Cookie 行を貼り、必要なら source URL と request URL を入力して「競合チェック」。同名Cookie競合や上書きリスクを確認します。

注意(このツール)

  • Path未指定時の既定値は source URL 依存です。未入力時は / として扱います。
  • SameSite とブラウザの3rd-party制限は別ツールで確認してください。

このページについて

何をするツール?

複数の Set-Cookie 行を解析し、同名かつ異なる Domain/Path を持つCookieの競合を検出します。

Request URL を入れると、実際に送信候補になるCookieを推定し、衝突しやすいケースを抽出します。

使いどころ

  • ログイン状態がURLやサブドメインで揺れる
  • 同じ cookie name を複数サービスが使っている
  • 移行後に旧Path/旧DomainのCookieが残っている

検出する代表パターン

  • 同一キー(name+domain+path)の重複設定による上書き
  • 同名CookieのPath違いによる送信順依存
  • Secureあり/なしの混在による環境差分
  • host-only と Domain 属性ありの混在による判定複雑化

このツールでできること

  • Set-Cookie の構文分解と属性一覧化
  • 同名Cookie競合の警告と重複キー検出
  • Request URL 指定時の送信候補シミュレーション

切り分け手順(おすすめ)

  • 問題が出るレスポンスの Set-Cookie 行をまとめて貼る
  • source URL / request URL を入れて Analyze する
  • Conflict警告を元に Path/Domain戦略を整理する
  • SameSiteや安全属性は関連ツールで追加確認する

注意(運用)

  • Path未指定時の既定値推定は source URL 依存です。未入力時は / を仮定します。
  • Cookie送信順はブラウザ実装差があり、完全一致を保証しません。

参照仕様

  • RFC 6265(HTTP Cookies)
  • MDN: Set-Cookie

FAQ

同名Cookieを完全に禁止すべきですか?

用途次第ですが、運用トラブルを減らすにはドメイン/パスを含めて責務を分離し、重複を最小化する設計が有効です。

Conflict警告があれば必ず不具合ですか?

必ずしも不具合ではありませんが、意図しない上書きや送信順依存を生みやすいため、設計意図を確認してください。

参考リンク

  1. RFC 6265(HTTP Cookies)
  2. MDN: Set-Cookie

site_map ルールに基づいて、次に確認すべきページを表示しています。

  1. Set-Cookie Inspect — Set-Cookie 属性を解析して配布方針を確認
  2. Cookie Domain/Path Matcher — Domain/Path/Secure 条件でCookie送信可否を判定
  3. SameSite Cookie Simulator — SameSite と文脈からCookie送信可否をシミュレーション
  4. Cookie Security Audit — Secure/HttpOnly/SameSite を監査
  5. Cookie Size Checker — Cookie ヘッダーサイズを見積もり上限超過を点検
  6. 同名Cookie競合で不安定な時の診断手順 — 同名CookieのPath/Domain差分・上書き順・送信衝突を整理して不安定挙動を解消する
  7. Set-Cookie が保存されない時の診断手順 — Domain/Path/Secure/SameSite を順に確認して Cookie 非保持の原因を切り分ける
  8. Cookie障害の運用チェックリスト — 保存失敗・OAuth戻り失敗・同名競合を一本化し、トリアージから恒久対策まで運用手順を標準化する

レスポンスヘッダー診断

生ヘッダーから Retry-After / Server-Timing / Link / Content-Type を段階的に解析

Example

Set-Cookie: sid=app; Path=/; Secure
Set-Cookie: sid=admin; Path=/admin; Secure