HTTP referer

Z Wikipedie, otevřené encyklopedie

HTTP referer (původem jako překlep z anglického slova referrer) je v informatice označení pro URI, ze kterého byla webová stránka navštívena. Údaj HTTP referer zapisuje webový prohlížeč do hlavičky HTTP dotazu pro webový server, který ho může dále zpracovat (ochrana proti cross-site request forgery) a uložit do logovacího souboru k pozdější analýze (sledování zdrojů návštěvnosti webových stránek, SEO).

Dereferer označuje činnost, při které je ze žádosti o webovou stránku odstraněn HTTP referer, takže není možné zjistit, odkud uživatel na webovou stránku přišel.

Původ označení[editovat | editovat zdroj]

Špatně vyhláskované slovo referer vzniklo v původním návrhu protokolu HTTP od počítačového odborníka Phillipa Hallam-Bakera. Špatně vyhláskované slovo bylo zaneseno do dokumentu RFC 1945; spoluautor dokumentu Roy Fielding poznamenal, že tehdejší kontrola pravopisu v Unixu neznala jak slovo „referrer“, tak ani chybně hláskované „referer“. Nesprávný „referer“ se tak stal široce používaným, v některých webových specifikacích je však používán správný pravopis „referrer“, jako např. Document Object Model.

Podrobnosti[editovat | editovat zdroj]

Když uživatel ve webovém prohlížeči klikne na hypertextový odkaz, je do prohlížeče nahrána nová webová stránka. Při získávání této nové webové stránky sdělí webový prohlížeč jako doplňující informaci referer, tj. URI stránky, na které bylo na odkaz kliknuto, tj. odkaz na stránku, ze které se uživatel na novou stránku dostal. Referer je tedy odkaz na předchozí webovou stránku. Pro obrázky uvnitř webové stránky je pak referer sama stránka, která obrázky obsahuje.

Mnoho webových serverů zapisuje referery jako součást snahy sledovat pohyb uživatele. Většina webového analytického software referer zpracovává. Protože však tak může být porušováno soukromí, některé prohlížeče umožňují uživateli zakázat odesílání této informace. Některé proxy a firewall softwary mají funkci ke znemožnění vysledování lokace neveřejných webů. Může to ale také působit problémy: některé webové servery blokují části svých webových stránek těm prohlížečům, které referující informace neodesílají aby tak zabránili neautorizovaným vstupům. Některé proxy programy umožňují dávat nejvyšší stupeň adresy cílové stránky jako referenci, což obvykle těmto problémům zabrání, ale neprozrazuje uživatelem naposledy navštívenou stránku.

Blogy začaly publikovat referující informace, aby zpětně odkázaly na lidi, kteří na ně odkazují, což tak rozšířilo návštěvnost. Bohužel to obratem vedlo k rozmnožení referujících spamů: odesílání falešných referujících informací proto, aby se zvýšila návštěvnost spamerské webové stránky.

Mnoho placených pornografických stránek používá referující informace k ochraně svých stránek. Přístup je dán jen prohlížečům přicházejících z několika málo schválených stránek, což umožňuje sdílení materiálů mezi skupinou spolupracujících placených stránek. Metoda označovaná jako referer spoofing je pak používána k získání volného přístupu na takto chráněné stránky.

Využití refereru[editovat | editovat zdroj]

Zpracováním refererů může majitel webových stránek zjistit, odkud přicházejí uživatelé na jeho stránky.

Skrytí refereru[editovat | editovat zdroj]

Mnoho webových serverů zapisuje informace o veškerém provozu včetně refererů sdělených webovými prohlížeči s každým požadavkem, což zvyšuje narušování soukromí uživatelů. V reakci na to tak vzniká mnoho programů, které naopak znemožňují odesílání těchto informací, nebo je různě pozměňují. Programy zajišťující ochranu používají spíše první variantu, servery na základě webů spíše mění URL a nahrazují ji (často svojí vlastní URL). To samozřejmě zvyšuje počet referenčních spamů. Technické detaily obou těchto opatření jsou podobné — softwarové aplikace jednají jako proxy server a manipulují s HTTP požadavkem, zatímco webově založené metody načítají HTML rámy, a tak způsobují to, že prohlížeč odesílá referenční URL jejich stránek. Některé webové prohlížeče umožňují uživatelům zasílání refereru jednoduše vypnout.

Reference[editovat | editovat zdroj]

V tomto článku byl použit překlad textu z článku HTTP referer na anglické Wikipedii.