HTTP referer

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Referer (от ошибочного написания англ. referrer — отсылающий, направляющий) — в протоколе HTTP — один из заголовков запроса клиента. Содержит URL источника запроса. Если перейти с одной страницы на другую, referer будет содержать адрес первой страницы. Часто на HTTP-сервере устанавливается программное обеспечение, анализирующее referer и извлекающее из него различную информацию. Так, например, владелец веб-сайта получает возможность узнать, по каким поисковым запросам, как часто и на какие именно страницы попадают люди. Если HTTP-клиент загружает с сервера картинку, представленную на какой-либо странице, то referer будет содержать адрес этой страницы. Некоторые HTTP-серверы перед выдачей картинки анализируют referer и не показывают картинку, если запрос приходит с другого сайта (а, например, показывают маленькое изображение-заглушку).

Любопытно, что написание английского слова referrer как referer является орфографической ошибкой[1], однако оно вошло в официальные спецификации протокола HTTP[2].

Как уже упоминалось, бывает, что сервер отказывается выдавать нужное содержимое без определённой строки referer, поэтому многое клиентское ПО имеет возможность выставить эту строку вручную — например, в программе wget это осуществляется при помощи опции «--referer».

Примечания

[править | править код]
  1. Appendix C: HTTP Header Reference // HTTP: The Definitive Guide : [англ.]. — 1. — O'Reilly Media, Inc., 2002. — P. 524. — 635 p. — ISBN 978-1565925090.
  2. T. Berners-Lee, R. Fielding, H. Frystyk. RFC 1945: Hypertext Transfer Protocol -- HTTP/1.0. IETF (май 1996). Дата обращения: 12 апреля 2019. Архивировано 30 ноября 2010 года.
  • RFC 2616: Hypertext Transfer Protocol — HTTP/1.1
  • IRI — Internationalized Resource Identifiers