Forwarded ヘッダーは、プロキシが要求のパスに含まれているときに変更または失われた、プロキシサーバーのクライアント側の情報が含まれます。

このヘッダーの代替で、事実上の標準となっているものは X-Forwarded-For, X-Forwarded-Host, X-Forwarded-Proto ヘッダーです。

このヘッダーは、デバッグ、統計、ロケーション依存コンテンツの生成に使用され、クライアントの IP アドレスなどの機密情報を公開します。したがって、このヘッダーを展開する際には、ユーザーのプライバシーを念頭に置く必要があります。

ヘッダー種別 要求ヘッダー
禁止ヘッダー名 いいえ

構文

Forwarded: by=<identifier>; for=<identifier>; host=<host>; proto=<http|https>

ディレクティブ

<identifier>
プロキシの使用時に変更または失われた情報を公開する識別子。これは次のいずれかです。
  • IP アドレス (v4 又は v6、任意でポート番号付き、 ipv6 は引用符と角括弧で囲まれます)
  • 難読化された識別子 ("_hidden" や "_secret" など)
  • 又は先行するエンティティが不明な場合 (及び依然として要求の転送が行われたことを示したい場合) は "unknown"
by=<identifier>
要求がプロキシサーバーに入ってきたインターフェイス。
for=<identifier>
要求を発行したクライアントと、その後のプロキシチェーン内のプロキシ。
host=<host>
プロキシから受信したときの Host 要求ヘッダー。
proto=<http|https>

そのプロトコルが要求の作成に使用されたか (ふつうは "http" 又は "https")。

Forwarded ヘッダーの使用

Forwarded: for="_mdn" 

# 大文字小文字の区別なし
Forwarded: For="[2001:db8:cafe::17]:4711"

# セミコロン区切り
Forwarded: for=192.0.2.60; proto=http; by=203.0.113.43

# 複数の値をコンマで区切って追加可能
Forwarded: for=192.0.2.43, for=198.51.100.17

X-Forwarded-For から Forwarded への移行

アプリケーション、サーバー、プロキシが標準化された Forwarded ヘッダーに対応している場合は、 X-Forwarded-For を置き換えることができます。なお、 IPv6 アドレスは、 Forwarded では引用符と角括弧で囲む必要があります。

X-Forwarded-For: 123.34.567.89
Forwarded: for=123.34.567.89

X-Forwarded-For: 192.0.2.43, 2001:db8:cafe::17
Forwarded: for=192.0.2.43, for="[2001:db8:cafe::17]"

仕様書

仕様書 題名
RFC 7239, セクション 4: Forwarded Forwarded HTTP Extension

ブラウザーの対応

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応 ? ? ? ? ? ?
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応 ? ? ? ? ? ? ?

関連情報

ドキュメントのタグと貢献者

このページの貢献者: mfuji09
最終更新者: mfuji09,