HTTP referer, nebo někdy také referer stránky či referrer (se dvěma „r“), je speciální HTTP hlavička, ve které webový prohlížeč posílá serveru při vyžádání stránky adresu, ze které se návštěvník na danou stránku dostal. Tj. referer říká, z jaké stránky vedl odkaz na aktuálně zobrazenou stránku.
To je užitečné zejména ve webové analytice, neboť měřící nástroj pak podle refereru dokáže návštěvu přiřadit k jejímu zdroji. A protože marketéři tyto informace v příslušných přehledech bedlivě sledují, referery bývají zneužívány k vytváření tzv. referral spamu. Referery stránek se také ukládají do serverových logů. Referer se však hodí i při běžném programování webových aplikací.
Podoba HTTP hlavičky
HTTP hlavička referer vypadá takto jednoduše:
Referer: https://www.example.cz/example-page.htm
Je to jeden řádek, jehož součástí je absolutní adresa odkazující stránky.
Referer nebo referrer?
Možná máte pocit, že správně by se to anglicky mělo psát referrer, se dvěma „r“. A je to pocit oprávněný. Jde o překlep, který vytvořil autor HTTP protokolu Phillip Hallam-Baker v roce 1996 a který zůstal v dobách začátků internetu neodhalen, protože tehdejší textové editory neuměly překlepy dokonale kontrolovat. A mezitím se slovo referer stalo široce používaným standardem, už nebylo možné překlep změnit.
Mně se tento příběh moc líbí. Je to, jako byste se narodili na Měsíci, v místní lunární metropoli prožili půl života a teď si četli o Neilu Armstrongovi a o tom, jak něco malého nepodstatného pokazil a jak ta chybička zůstává i po desetiletích součástí vašeho světa
Omezování HTTP refereru v prohlížečích
V souvislosti se snahami o zvyšování soukromí uživatelů přicházejí prohlížeče postupně se změnami výchozích nastavení politiky předávání HTTP refereru. Stejně, jako to dělají u cookies, HTTP hlavičky User Agent a jinde.
Například prohlížeč Chrome nepředává v této hlavičce od verze 85, která vyšla v srpnu 2020, přesnou URL stránky s odkazem a v HTTP hlavičce předává pouze doménu. Sice to jednotlivé weby mohou změnit, pokud to však neudělají, přesná data o původu uživatele nejsou dostupná.
To mimo jiné znamená, že konkrétní stránku neuvidíte ani v Google Analytics v přehledu Odkazující stránky. Nebo že vám vyhledávač Seznam může začít padat do kanálu referral místo organic (protože se tím odřízne i parametr q=hledane-slovo, podle které Analytics poznávají, že jde o vyhledávání). Jak toto nežádoucí chování v Google Analytics opravit pomocí filtrů píše Marek Lecián.
Pokud z nějakého důvodu potřebujete, aby váš web předával i nadále celou URL stránky, třeba protože si vzájemně předáváte návštěvnost s jiným webem, můžete to zařídit posíláním speciální HTTP hlavičky Referrer-Policy
s hodnotou unsafe-url
. Viz podrobnější specifikace této hlavičky na MDN. Je však myslím dobré začít do budoucna počítat s tím, že se tato politika prohlížečů bude dále zpřísňovat.
Zaujal jsem vás? Přihlašte se do mailingu a mé další texty už vám neuniknou:
Zprávy posílám cca 8× ročně. Odhlásit se můžete kdykoliv. Více informací.