-
Notifications
You must be signed in to change notification settings - Fork 8k
/
index.md
69 lines (50 loc) · 4.38 KB
/
index.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
---
title: Referer
slug: Web/HTTP/Headers/Referer
---
{{HTTPSidebar}}
Заголовок запроса **`Referer`** содержит URL исходной страницы, с которой был осуществлён переход на текущую страницу. Заголовок `Referer` позволяет серверу узнать откуда был осуществлён переход на запрашиваемую страницу. Сервер может анализировать эти данные, записывать их в логи или оптимизировать процесс кеширования.
Обратите внимание, что слово «Referer» на самом деле является неправильным написанием слова «Referrer». См. [HTTP referer](https://ru.wikipedia.org/wiki/HTTP_referer).
> **Предупреждение:** Заголовок `Referer` может раскрыть информацию пользователя об истории посещённых страниц, что может привести к нарушению приватности.
>
> Поэтому, никогда не ссылайтесь и не включайте на страницу контент без предварительной проверки конфиденциальности, безопасности и сопряжённых с этим рисков, в том числе на страницах, которые не содержат информации о риске, но связаны с ним.
>
> К примеру, по умолчанию URL страницы сброса пароля будет попадать на хосты, размещающие контент на странице, и хосты ссылок, нажатых на этой странице. В обоих случаях сторонний хост получит `Referer` пользователя.
>
> Существует риск, что содержимое, загруженное на страницу получит доступ к `Referer` из объекта document.referrer.
>
> Остерегайтесь хостов первого эшелона, таких как хост изображений. Несмотря на кажущийся, минимальный риск, они получают ваш `Referer` и это может стать проблемой безопасности.
>
> Некоторые браузеры, такие как Firefox, также отправляют `Referer` в представлениях, отличных от страниц HTML. К примеру, JsonView отправит `Referer` хосту, когда в JSON будет переход по URL-адресу, это может раскрыть приватные данные. Иногда передача `Referer` случается при работе с API, при некорректных параметрах запроса в API ключах.
Браузер не отправляет заголовок `Referer`, если:
- исходный ресурс — локальный "файл" или "data" URI,
- используется незащищённый HTTP-запрос, а исходная страница была получена с защищённым протоколом (HTTPS).
<table class="properties">
<tbody>
<tr>
<th scope="row">Тип заголовка</th>
<td>{{Glossary("Request header")}}</td>
</tr>
<tr>
<th scope="row">{{Glossary("Forbidden header name")}}</th>
<td>yes</td>
</tr>
</tbody>
</table>
## Синтаксис
```
Referer: <url>
```
## Указания
- \<url>
- : Абсолютный или частичный адрес предыдущей веб-страницы, с которой был осуществлён переход на запрашиваемую страницу. Фрагменты URL-адреса (т.к. #якорь") и данные пользователя(т.к. "логин:пароль" в "https\://username:password\@example.com/foo/bar/") не включать.
## Пример
```
Referer: https://developer.mozilla.org/ru/docs/Web/JavaScript
```
## Спецификации
{{Specifications}}
## Совместимость с браузерами
{{Compat}}
## Смотрите также
- {{HTTPHeader("Referrer-Policy")}}