A user account is required in order to edit this wiki, but we've had to disable public user registrations due to spam.
To request an account, ask an autoconfirmed user on Chat (such as one of these permanent autoconfirmed members).
Meta referrer
Overview
This document describes a proposal the "referrer" metadata name. Using the referrer metadata attribute, a document can control the behavior if the Referer HTTP header attached to requests that originate from the document.
Use Cases
An author might wish to control the Referer
header omitted by a document for a number of reasons.
Privacy
A social networking site has a profile page for each of its users, and users add hyperlinks from their profile page to their favorite bands. The social networking site might not wish to leak the user's profile URL to the band web sites when other users follow those hyperlinks (because the profile URLs might reveal the identity of the owner of the profile).
Some social networking sites, however, might wish to inform the band web sites that the links originated from the social networking site but not reveal which specific user's profile contained the links.
Security
A web application uses HTTPS and a URL-based session identifier. The web application might wish to link to HTTPS resources on other web sites without leaking the user's session identifier in the URL.
Trackback
A blog hosted over HTTPS might wish to link to a blog hosted over HTTP and receive trackback links.
Specification
Syntax
Keyword: referrer
The referrer metadata attribute can have one of four values:
never
always
origin
default
Let referrer-policy be the value of the content
attribute with LWS
stripped from the beginning and end of the string and converted to lower case. If referrer-policy is none of the strings listed above, the user agent MUST act as if referrer-policy is the string default
.
Semantics
Replace Step 3 of Fetching resources in the HTML standard [HTML] with the following text:
Let the referrer-header-value be the document's current address of document.
Remove any <fragment> component from the referrer-header-value.
If the origin of the appropriate Document is not a scheme/host/port tuple, then replace the referrer-header-value with the empty string, regardless of its value.
- If the referrer-policy is
never
:
- Replace the referrer-header-value with the empty string, regardless of its value.
- If the referrer-policy is
default
:
- Replace the referrer-header-value with the empty string if the <scheme> component of the referrer-header-value represents a protocol that uses transport-layer security and the <scheme> component of the resource being fetched does not.
- If the referrer-policy is
origin
:
- Replace the referrer-header-value with the ASCII serialization [ORIGIN] of the origin' of the appropriate Document.
- If the referrer-policy is
always
:
- Do not alter the referrer-header-value. Warning! This might cause https referrers to be sent over the network as part of unencrypted HTTP requests.
In Step 5 of Fetching resources in the HTML standard [HTML], replace the text "For the purposes of the Referer (sic) header, [...]" with the following text:
For the purposes of the Referer (sic) header, use the referrer-header-value are generated in Step 3.
Examples
This meta element instructs the user agent to omit the Referer
header in all HTTP requests that originate from the document containing the element:
<meta name="referrer" content="never">
This meta element instructs the user agent to include the document's origin in the Referer
header rather than the full URL of the document:
<meta name="referrer" content="origin">