Заголовки HTTP: в чем разница между X-FORWARDED-FOR, X_FORWARDED_FOR и HTTP_X_FORWARDED_FOR?

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

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

Ответы на вопрос(1)

Решение Вопроса

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

$_SERVER['HTTP_X_FORWARDED_FOR']

Название заголовка HTTP на самом деле

X-Forwarded-For

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

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

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

 mmoya23 апр. 2015 г., 19:49
FTR,RFC 7239 стандартизировал продленное расширение HTTP. Стандартный заголовок сейчасForwarded: for=1.2.3.4;proto=http хотя никто не ожидает, что это будет принято в ближайшее время. ПроверьтеЧто такое полная спецификация HTTP-заголовка X-Forwarded-Proto?.
 informatik0119 июн. 2013 г., 03:20
+1. Как дополнение: кажется, что использованиеHTTP_ * возник вСтандарт Common Gateway Interface (CGI), Цитата:"Meta-variables with names beginning with "HTTP_" contain values read from the client request header fields, if the protocol used is HTTP. The HTTP header field name is converted to upper case, has all occurrences of "-" replaced with "_" and has "HTTP_" prepended to give the meta-variable name."

Ваш ответ на вопрос