---mdx // Begin File: content/glossary/referrer-policy.mdx
title: "Referrer-Policy(参照元制御)" description: "外部リクエストへ送出される参照元(Referrer)情報を制御し、機微情報の漏洩やキャッシュ設計の破綻を防ぐ。" tags: ["network", "caching", "security"] updated: "2025-09-02" metrics:
- "RUMで“外部向け画像/計測”の失敗率・TTFBの偏りを監視"
- "CDNログでオリジン別の転送量/ヒット率を確認" tuning:
- "基本は strict-origin-when-cross-origin(ブラウザ既定)"
- "外部分析/決済など“URLに機微を含む”箇所は no-referrer を個別指定" judgement:
- "ユーザー価値に直結しない送出 referrer は最小化"
- "配信/CDNのキャッシュキーと矛盾しないか再確認" failure:
- "ダウングレード環境での意図しない referrer 送出"
- "HTMLの meta とヘッダ値の不一致でデバッグ困難" checklist:
- "全体既定は strict-origin-when-cross-origin?"
- "機微ページは no-referrer に分離運用?"
- "SWR/キャッシュ整合と矛盾しない?" related:
- "immutable"
- "s-maxage"
- "stale-while-revalidate"
- "range-requests"
- "viewport-width"
定義
Referrer-Policy
は、ページから外部へ発行する HTTP リクエストに どこまで参照元 URL を含めるか を制御する仕組み。
なぜ重要か
- 参照元 URL にクエリやパスで機微情報が含まれると、外部ドメインへ漏洩する恐れ。
- 参照元の粒度により CDNキャッシュキー(Vary/Key)や 計測値の偏り が生じる。
- 仕様既定は
strict-origin-when-cross-origin
。互換性と安全性のバランスが良い。
実務での活用
- 既定方針は ヘッダで付与(サーバ/エッジで統一)。
- サブアプリ/決済など一部のパスでは
no-referrer
を 個別上書き。 - 画像/OGP/計測などは SWR+署名URL と組み合わせ、漏洩と計測歪みの双方を抑止。
実装例
サーバ(nginx)
add_header Referrer-Policy "strict-origin-when-cross-origin" always;