web-dev-qa-db-ja.com

HTTPヘッダー:X-FORWARDED-FOR、X_FORWARDED_FOR、HTTP_X_FORWARDED_FORの違いは何ですか?

リクエストが転送されたIPアドレスを識別するために使用される非RFC "XFF" HTTPヘッダーのさまざまなスペルを確認します。これらの異なるヘッダー名に違いはありますか:X-FORWARDED-FORX_FORWARDED_FORHTTP_X_FORWARDED_FOR? 3つすべてを探す必要がありますか?

PS-はい、私はこのヘッダーが簡単に偽装される可能性があることを知っています:)

24
urig

HTTP_接頭辞は、PHPなどの一部の言語で、HTTPヘッダーを他のサーバー変数と区別するためだけに使用されています。

$_SERVER['HTTP_X_FORWARDED_FOR']

HTTPヘッダー名は実際には

X-Forwarded-For

ヘッダー名自体は大文字と小文字を区別しません。ただし、リクエストヘッダーをクエリする場合、プログラミング言語はそれについて大/小文字を区別します(ここでも、PHPはその1つです)。

X-は、Forwarded-Forヘッダーが非標準であることを示します。ヘッダー名を参照するために言語がダッシュまたはアンダースコアを使用するかどうかに違いはないと思います。

基本的に、それらはすべて同じヘッダーであり、さまざまな実装によって異なって参照されます。

37
BoltClock