Заголовки HTTP: в чем разница между X-FORWARDED-FOR, X_FORWARDED_FOR и HTTP_X_FORWARDED_FOR? - PullRequest
23 голосов
/ 30 сентября 2010

Я вижу различные варианты написания не RFC заголовка HTTP "XFF", используемого для идентификации IP-адресов, через которые был переслан запрос. Есть ли разница между этими именами заголовков: X-FORWARDED-FOR, X_FORWARDED_FOR и HTTP_X_FORWARDED_FOR? Нужно ли искать все три?

PS - Да, я знаю, что этот заголовок может быть легко подделан:)

1 Ответ

36 голосов
/ 30 сентября 2010

Префикс HTTP_ используется некоторыми языками, такими как PHP, просто для того, чтобы отличать заголовки HTTP от других серверных переменных:

$_SERVER['HTTP_X_FORWARDED_FOR']

Имя заголовка HTTP на самом деле

X-Forwarded-For

Имя заголовкасам по себе не чувствителен к регистру.Однако, когда вы хотите запросить заголовок запроса, языки программирования в значительной степени учитывают регистр (опять же, PHP является одним из них).

X- указывает, что заголовок Forwarded-For нестандартный.Я не думаю, что есть разница, использует ли язык тире или подчеркивания для ссылки на имена заголовков.

По сути, это все один и тот же заголовок, просто по-разному называемый различными реализациями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...