🧭 Referrer-Policyヘッダー生成
Referrer-Policy: strict-origin-when-cross-origin
リンクをクリックして他サイトへ遷移した際、ブラウザがRefererヘッダーとして送信する情報の範囲を制御するReferrer-Policyヘッダーを、仕様で定義された8種類の値から選んで生成するツールです。
使い方
- 適用したいポリシーを一覧から選択します。
- 生成されたReferrer-Policyヘッダー文字列が自動的に表示されます。
- 「コピー」ボタンでヘッダー文字列をコピーし、Webサーバーやmetaタグに設定してください。
計算の仕組み
Referer(リファラー)は、リンクをクリックしたり画像を読み込んだりするときに、ブラウザが「どのページから来たか」を相手のサーバーに伝える情報です。Referrer-Policyヘッダーは、その情報をどこまで送るかを決めるもので、W3Cの仕様で8種類の値が定められています。 no-referrer: 一切送らない no-referrer-when-downgrade: HTTPSからHTTPへの移動では送らない origin: オリジン(https://example.com/)だけを送る origin-when-cross-origin: 同じサイト内では完全なURL、他サイトにはオリジンだけ same-origin: 同じオリジン内でだけ送る strict-origin: オリジンだけを送り、HTTPS→HTTPでは送らない strict-origin-when-cross-origin: 同じサイト内では完全なURL、他サイトにはオリジンだけ、HTTPS→HTTPでは送らない unsafe-url: 常に完全なURLを送る 主要なブラウザは、何も指定しない場合にstrict-origin-when-cross-originを使います。
計算例
ページ https://example.com/account/orders?id=123 から外部サイトへのリンクをクリックした場合 strict-origin-when-cross-origin: https://example.com/ no-referrer: 送信されない unsafe-url: https://example.com/account/orders?id=123 ヘッダーの書き方 Referrer-Policy: strict-origin-when-cross-origin
使用上の注意
- URLに個人情報やトークンが含まれるページでは、unsafe-urlを使わないでください。外部サイトに情報が漏れる原因になります。
- 個々のリンクや画像には、HTMLのreferrerpolicy属性やrel="noreferrer"で別の設定ができます。
- アクセス解析で参照元のページを詳しく知りたい場合も、同じサイト内では完全なURLが送られるstrict-origin-when-cross-originで十分なことがほとんどです。
よくある質問
Referrer-Policyとは何ですか?
リンク先のサイトに対して、どこから遷移してきたかを示すRefererヘッダーの情報量を制御するHTTPヘッダーです。プライバシー保護のため、遷移元URLの全部または一部を送信しない設定が可能です。
どのポリシーを選べばよいですか?
多くの主要ブラウザでは strict-origin-when-cross-origin が標準の既定値になっており、同一オリジンへは完全なURLを、異なるオリジン(かつHTTPS→HTTPS等の安全な遷移)へはオリジンのみを送信するバランスの取れた設定です。迷った場合はこの値がおすすめです。
HTTPヘッダー以外で設定する方法はありますか?
HTMLの `<meta name="referrer" content="...">` タグでも同じ値を指定できます。HTTPヘッダーとmetaタグの両方が存在する場合はページ側の設定が優先されます。