Что такое полная спецификация значений заголовков X-Forwarded-Proto
HTTP?
Что такое полная спецификация HTTP-заголовка X-Forwarded-Proto?
Ответ 1
Нет "полной спецификации" - это стандарт де-факто. X-
перед именем заголовка обычно * обозначил его как экспериментальный/нестандартный/специфичный для вендора. Как только он станет стандартной частью HTTP, он потеряет префикс.
Есть некоторые работы из IETF по его стандартизации, но это только на этапах проекта, насколько я могу судить. Проверьте http://tools.ietf.org/html/draft-ietf-appsawg-http-forwarded-10 для последнего черновика на момент написания этой статьи. Но имейте в виду, что он может измениться в любое время, пока он будет создан, и не полагайтесь на него в производстве.
Update:
RFC 7239 теперь определяет заголовок Forwarded:
, который предназначен для замены X-Forwarded-*
. Если вы заботитесь о стандартах, я бы рекомендовал использовать их вместо этого.
* Раньше это была официальная вещь, но ее больше не было. RFC 6648 отменяет соглашение о префиксах X-
. К сожалению, конвенция настолько широко известна (и такая сдержанная сдержанность), что большинство людей, не входящих в IETF, вероятно, игнорируют эту рекомендацию.
Ответ 2
Наконец, RFC 7239 - перенаправленный HTTP-расширение от июня 2014 года. Заголовок определен в разделе 5.4.
Некоторые примеры:
Forwarded: proto=https
Forwarded: for=1.2.3.4;proto=http
Я просто надеюсь, что это не займет слишком много времени, чтобы получить широкое распространение. Пример разнообразия заголовков из-за отсутствия стандарта можно увидеть в этом вопросе .
Ответ 3
Я не знаю "полной спецификации".
Рабочая группа IETF APPSArea недавно решила определить новое поле заголовка "Переадресовано", которое должно заменить поля заголовка "X-Forwarded- *", которые вы упомянули.
Подробнее см. http://tools.ietf.org/html/draft-ietf-appsawg-http-forwarded.