--- 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-referrerno-referrer-when-downgrade (domyślna)originhttps://example.com/page.html wyśle referrer brzmiący: https://example.com/.origin-when-cross-originsame-originstrict-originstrict-origin-when-cross-originunsafe-urlNiniejsza 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-referrersame-originstrict-origin-when-cross-originno-referrer-when-downgrade (domyślna)