--- title: Zasada Polecającego (Referrer-Policy) slug: Web/HTTP/Headers/Referrer-Policy tags: - HTTP - Reference - Referencja - Referrer-Policy - Response - Response Header - nagłówek HTTP - nagłówek odpowiedzi - odpowiedź - polecający - prywatność - referrer - zasada polecającego translation_of: Web/HTTP/Headers/Referrer-Policy ---
{{glossary("HTTP header")}} Referrer-Policy
kontroluje, w jakim zakresie informacje dot. polecającego (referrera) (wysyłane poprzez nagłówek {{HTTPHeader("Referer")}}) powinny być zawarte w żądaniu
Typ nagłówka | {{Glossary("Response header")}} |
---|---|
{{Glossary("Forbidden header name")}} | nie |
Originalna nazwa nagłówka, {{HTTPHeader("Referer")}}, to błędnie zapisane słowo "referrer" ("polecający"). Nagłówek Referrer-Policy
nie zawiera tej literówki.
Referrer-Policy: no-referrer Referrer-Policy: no-referrer-when-downgrade Referrer-Policy: origin Referrer-Policy: origin-when-cross-origin Referrer-Policy: same-origin Referrer-Policy: strict-origin Referrer-Policy: strict-origin-when-cross-origin Referrer-Policy: unsafe-url
no-referrer
no-referrer-when-downgrade
(domyślna)origin
https://example.com/page.html
wyśle referrer brzmiący: https://example.com/
.origin-when-cross-origin
same-origin
strict-origin
strict-origin-when-cross-origin
unsafe-url
Niniejsza zasada może skutkować wyciekiem potencjalnie prywatnych informacji z URLów zasobów HTTPS do niebezpiecznych originów. Mocno się zastanów, zanim wybierzesz to ustawienie.
Możesz ustawić zasady polecającego także w HTMLu. Przykładowo, możesz ustawić zasadę polecającego dla całego dokumentu poprzez konfigurację elementu {{HTMLElement("meta")}} z name równe referrer
:
<meta name="referrer" content="origin">
Lub ustawić dla określonych żądań poprzez atrybut referrerpolicy
na elementach {{HTMLElement("a")}}, {{HTMLElement("area")}}, {{HTMLElement("img")}}, {{HTMLElement("iframe")}}, {{HTMLElement("script")}} czy {{HTMLElement("link")}}:
<a href="http://example.com" referrerpolicy="origin">
Alternatywnie, w przypadku elementu a
, area
, bądź link
możesz ustawić relację linku na noreferrer
:
<a href="http://example.com" rel="noreferrer">
CSS może przechwytywać zasoby wyszczególnione w arkuszach stylów. Niniejsze zasoby również podlegają zasadzie polecającego:
no-referrer-when-downgrade
) chyba, że jest nadpisana przez nagłówek HTTP Referrer-Policy
w odpowiedzi arkusza stylów CSS.style
aplikowana jest zasada właściciela dokumentu.Zasada | Document | Nawigacja do | Referrer |
---|---|---|---|
no-referrer |
https://example.com/page | gdziekolwiek | (no referrer) |
no-referrer-when-downgrade |
https://example.com/page | https://example.com/otherpage | https://example.com/page |
https://mozilla.org | https://example.com/page | ||
http://example.org | (no referrer) | ||
origin |
https://example.com/page | anywhere | https://example.com/ |
origin-when-cross-origin |
https://example.com/page | https://example.com/otherpage | https://example.com/page |
https://mozilla.org | https://example.com/ | ||
http://example.com/page | https://example.com/ | ||
same-origin |
https://example.com/page | https://example.com/otherpage | https://example.com/page |
https://mozilla.org | (no referrer) | ||
strict-origin |
https://example.com/page | https://mozilla.org | https://example.com/ |
http://example.org | (no referrer) | ||
http://example.com/page | anywhere | http://example.com/ | |
strict-origin-when-cross-origin |
https://example.com/page | https://example.com/otherpage | https://example.com/page |
https://mozilla.org | https://example.com/ | ||
http://example.org | (no referrer) | ||
unsafe-url |
https://example.com/page?q=123 | anywhere | https://example.com/page?q=123 |
Jeśli chcesz określić zasadę awaryjną na wypadek, gdy pożądana zasada nie jest wspierana przez daną przeglądarkę, użyj listy oddzielonej przecinkiem, gdzie na samym końcu wpisujesz pożądaną zasadę:
Referrer-Policy: no-referrer, strict-origin-when-cross-origin
W przypadku powyższego scenariusza, no-referrer
zostanie użyty jedynie, jeśli strict-origin-when-cross-origin
nie jest wspierany przez daną przeglądarkę.
Określanie wielu wartości jest wspierane jedynie w nagłówku HTTP Referrer-Policy
, nie jest natomiast w atrybucie referrerpolicy
.
Specyfikacja | Status |
---|---|
Zasada Referrera | Wersja robocza redaktora |
{{Compat("http.headers.Referrer-Policy")}}
about:config
, by móc pozwolić użytkownikom na ustawienie ich domyślnego Referrer-Policy
— network.http.referer.userControlPolicy
.network.http.referer.defaultPolicy
oraz network.http.referer.defaultPolicy.pbmode
.Dopuszczalne wartości to:
no-referrer
same-origin
strict-origin-when-cross-origin
no-referrer-when-downgrade
(domyślna)