Заголовок запроса Referer содержит URL исходной страницы, с которой был осуществлен переход на текущую страницу. Заголовок Referer позволяет серверу узнать откуда был осуществлен переход на запрашиваемую страницу. Сервер может анализировать эти данные, записывать их в логи или оптимизировать процесс кэширования.

Обратите внимание, что слово «Referer» на самом деле является неправильным написанием слова «Referrer». См. HTTP referer на Wikipedia .

Заголовок Referer может раскрыть информацию пользователя об истории посещенных страниц, что может привести к нарушению приватности.

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

К примеру, по умолчанию URL страницы сброса пароля будет попадать на хосты, размещающие контент на странице, и хосты ссылок, нажатых на этой странице. В обоих случаях сторонний хост получит Referer пользователя.

Существует риск, что содержимое, загруженное на страницу получит доступ к Referer из объекта document.referrer.

Остерегайтесь хостов первого эшелона, таких как хост изображений. Несмотря на кажущийся, минимальный риск, они получают ваш Referer и это может стать проблемой безопасности.

Некоторые браузеры, такие как Firefox, также отправляют Referer в представлениях, отличных от страниц HTML. К примеру, JsonView отправит Referer хосту, когда в JSON будет переход по URL-адресу, это может раскрыть приватные данные. Иногда передача Referer случается при работе с API, при некорректных параметрах запроса в API ключах.

Браузер не отправляет заголовок Referer, если:

  • исходный ресурс -- локальный "файл" или "data" URI,
  • используется незащищенный HTTP-запрос, а исходная страница была получена с защищенным протоколом (HTTPS).
Тип заголовка Request header
Forbidden header name yes

Синтаксис

Referer: <url>

Указания

<url>
Абсолютный или частичный адрес предыдущей веб-страницы, с которой был осуществлен переход на запрашиваемую страницу. Фрагменты URL-адреса (т.к. #якорь") и данные пользователя(т.к. "логин:пароль" в "https://username:password@example.com/foo/bar/") не включать.

Пример

Referer: https://developer.mozilla.org/en-US/docs/Web/JavaScript

Спецификация

Спецификация Название
RFC 7231, секция 5.5.2: Referer Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content

Совместимость с браузерами

Update compatibility data on GitHub
КомпьютерыМобильные
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome для AndroidEdge MobileFirefox для AndroidOpera для AndroidiOS SafariSamsung Internet
Базовая поддержкаChrome Полная поддержка ДаEdge Полная поддержка ДаFirefox Полная поддержка ДаIE Полная поддержка ДаOpera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка ДаChrome Android Полная поддержка ДаEdge Mobile Полная поддержка ДаFirefox Android Полная поддержка ДаOpera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка Да

Легенда

Полная поддержка  
Полная поддержка

См. также

Метки документа и участники

Внесли вклад в эту страницу: stonetrooper
Обновлялась последний раз: stonetrooper,