HTTP referer

Im Http, "Referer"(eine Rechtschreibfehler von Überweisung[1]) ist der Name eines optionalen HTTP -Headerfeld das identifiziert die Adresse der Website (d.h. die Uri oder Iri), aus der die Ressource angefordert wurde. Durch Überprüfen des Empfehlers kann der Server, der die neue Webseite angibt, sehen, wo die Anforderung stammt.

In der häufigsten Situation bedeutet dies, dass, wenn ein Benutzer a klickt Hyperlink in einem WebbrowserWenn der Browser eine Anforderung an den Server sendet, der die Ziel -Webseite hält, kann die Anforderung das Feld Referer enthalten, das die letzte Seite anzeigt, auf der der Benutzer sich befand (der, auf dem sie auf den Link geklickt haben).

Websites und Webserver Protokoll Der Inhalt des empfangenen Referentenfelds zur Identifizierung der Webseite, aus der der Benutzer einem Link für Werbe- oder statistischen Zwecke befolgt wird.[2] Dies bedeutet einen Verlust von Privatsphäre für den Benutzer und kann a einführen Sicherheit Risiko.[3] Um Sicherheitsrisiken zu mildern, haben Browser die Menge an Informationen, die im Referater gesendet wurden, stetig reduziert. Ab März 2021 standardmäßig Chrom,[4] Chrom-basierend Rand, Feuerfuchs,[5] Safari[6] Standard zum Senden von nur den Ursprung in Cross-Origin-Anfragen, wobei alles außer dem Domainnamen ausgerichtet ist.

Etymologie

Das Fehlschreiber von Überweisung wurde im ursprünglichen Vorschlag von Informatiker eingeführt Phillip Hallam-Baker Um das Feld "Referer" -Header in die zu integrieren Http Spezifikation.[7] Die Rechtschreibfehler wurde bis zum Zeitpunkt (Mai 1996) in die Eingliederung in die Anfrage für Kommentare Standards Dokument RFC 1945[8] (was „die gemeinsame Verwendung des Protokolls widerspiegelt, das zu diesem Zeitpunkt als" http/1.0 "'bezeichnet wird); Dokument Co-Autor Roy Fielding Im März 1995 bemerkt, dass "weder einer (Referer noch Referaner) durch" der Standard verstanden wird UNIX -Zaubersprüche der Zeit.[9] "Referer" ist seitdem zu einer weit verbreiteten Rechtschreibung in der Branche bei der Erörterung von HTTP -Empfehlern geworden. Die Verwendung des Rechtschreibfehlers ist jedoch nicht universell, da in einigen Webspezifikationen wie die korrekte Rechtschreibung "Referrer" verwendet wird das Überweisungspolitik HTTP -Header oder der Dokumentobjektmodell.[3]

Einzelheiten

Beim Besuch einer Webseite ist die Überweisungs- oder Überweisungsseite die URL der vorherigen Webseite, von der ein Link befolgt wurde.

Im Allgemeinen ist ein Empfehler die URL eines früheren Elements, der zu dieser Anfrage führte. Der Referrer für ein Bild ist beispielsweise im Allgemeinen das Html Seite, auf der es angezeigt werden soll. Das Feld Referrer ist ein optionaler Bestandteil der von der gesendeten HTTP -Anfrage Webbrowser auf den Webserver.[10]

Viele Websites protokollieren Empfehlungen als Teil ihres Versuchs Verfolgen Sie ihre Benutzer. Die meisten Webprotokollanalyse -Software kann diese Informationen verarbeiten. Da Überweisungsinformationen verstoßen können PrivatsphäreMit einigen Webbrowsern können der Benutzer das Senden von Empfehlungsinformationen deaktivieren.[11] Etwas Proxy und Firewall Die Software filtert außerdem Empfehlungsinformationen, um zu vermeiden, dass der Standort nicht öffentlicher Websites ausgetragen wird. Dies kann wiederum Probleme verursachen: Einige Webserver blockieren Teile ihrer Website an Webbrowser, die nicht die richtigen Empfehlungsinformationen senden, um zu verhindern Deep Links oder nicht autorisierte Verwendung von Bildern (Bandbreitendiebstahl). Einige Proxy-Software können die Adresse der Zielwebsite als Referrer angeben, was diese Probleme verringert, aber in einigen Fällen die letzt besuchte Webseite des Benutzers preisgeben kann.

Viele Blogs veröffentlichen Empfehlungsinformationen, um auf Personen zurückzukehren, die mit ihnen verknüpfen, und somit das Gespräch erweitern. Dies hat wiederum zum Aufstieg von geführt Referrer Spam: Das Senden von gefälschten Empfehlungsinformationen, um die Website des Spammers zu popularisieren.

Mit Dokument.referrer in können Sie auf die Überweisungsinformationen auf der Clientseite zugreifen JavaScript.[12] Dies kann beispielsweise verwendet werden, um eine Webseite basierend auf der Suchmaschinenabfrage eines Benutzers zu individualisieren. Das Empfehlungsfeld enthält jedoch nicht immer Suchschlüsselwörter, z. B. bei der Verwendung Google-Suche mit https.[13]

Referrer versteckt

Die meisten Webserver verwalten Protokolle des gesamten Datenverkehrs und zeichnen den vom Webbrowser gesendeten HTTP -Empfehler für jede Anforderung auf. Dies wirft eine Reihe von Datenschutzbedenken auf, und infolgedessen wurden eine Reihe von Systemen entwickelt, um Webserver zu verhindern, dass die reale überweisende URL gesendet wird. Diese Systeme funktionieren entweder durch das Blanken des Empfehlungsfeldes oder durch Ersetzen durch ungenaue Daten. Allgemein, Internet sicherheit Suites leer Die Empfehlungsdaten, während webbasierte Server sie durch eine falsche URL ersetzen, normalerweise ihre eigene. Dies wirft das Problem des Referrer -Spam auf. Die technischen Details beider Methoden sind ziemlich konsistent - Softwareanwendungen wirken als Proxy Server und manipulieren Sie die HTTP-Anfrage, während webbasierte Methoden Websites in Frames laden, wodurch der Webbrowser eine Referrer-URL ihrer Website-Adresse sendet. Einige Webbrowser geben ihren Benutzern die Möglichkeit, Empfehlungsfelder im Anforderungsheader auszuschalten.[11]

Die meisten Webbrowser senden das Feld Referrer nicht, wenn sie angewiesen werden, mithilfe des Felds "Aktualisieren" umzuleiten. Dies enthält keine einige Versionen von Oper und viele mobile Webbrowser. Diese Umleitungsmethode wird jedoch von der entmutigt World Wide Web Konsortium (W3C).[14]

Wenn auf eine Website von a zugegriffen wird Http sicher (HTTPS) Verbindung und Linkpunkte auf irgendwohin, außer einem anderen sicheren Ort, wird das Feld Referrer nicht gesendet.[15]

Das HTML5 Standard -Unterstützung für das Attribut/den Wert rel = "norferrer", was den Benutzeragenten anweist, keinen Empfehler zu senden.[16]

Eine andere Vermittlermethode besteht darin, die ursprüngliche Link -URL in a zu konvertieren Daten URI -Schema-basierte URL mit einer kleinen HTML -Seite mit a Meta -Aktualisierung zur ursprünglichen URL. Wenn der Benutzer von der umgeleitet wird Daten: Seite ist der ursprüngliche Empfehler versteckt.

Inhaltssicherheitsrichtlinie Standardversion 1.1 führte eine neue eingeführt Überweisung Richtlinie, die mehr Kontrolle über das Verhalten des Browsers in Bezug auf den Referrer -Header ermöglicht. Insbesondere ermöglicht es dem Webmaster, den Browser zu unterweisen, Referrer überhaupt nicht zu blockieren, es nur dann anzuzeigen, wenn sie mit demselben Ursprung usw. bewegt werden usw.[17]

Verweise

  1. ^ Gourley, David; Totty, Brian; Sayer, Marjorie; Aggarwal, Anshu; Reddy, Sailu (27. September 2002). HTTP: Der endgültige Leitfaden. ISBN 9781565925090.
  2. ^ Kyrnin, Jennifer (2012-04-10). "Referrer - Was ist ein Empfehler - Wie funktionieren HTTP -Empfehlungen?". About.com. Abgerufen 2013-03-20.
  3. ^ a b "Hat Ihre Website ein Leck?". ICO -Blog. 2015-09-16. Archiviert von das Original Am 2018-05-24. Abgerufen 2018-08-16.
  4. ^ "Referrer-Richtlinie: Standard zum strengen Strict-Origin-wenn-Cross-Origin-Chrome-Plattform-Status". www.chromestatus.com. Abgerufen 2021-03-23.
  5. ^ Lee, Dimi; Kerschbaumer, Christoph. "Firefox 87 Trims HTTP -Empfehlungen standardmäßig zum Schutz der Privatsphäre der Benutzer". Mozilla Security Blog. Abgerufen 2021-03-23.
  6. ^ Wilander, John (2019-12-10). "Verhindern der Verfolgung der Verfolgung von Verfolgung". Webkit -Blog.
  7. ^ Hallam-Baker, Phillip (2000-09-21). "Re: Ist Al Gore der Vater des Internets?". Alt.folklore.computer. Abgerufen 2013-03-20.
  8. ^ Berners-Lee, T.; Fielding, R.; Frystyk, H. (Mai 1996). Hypertext -Transferprotokoll - HTTP/1.0. Ietf. doi:10.17487/rfc1945. RFC 1945.
  9. ^ Fielding, Roy (1995-03-09). "Re: Referer: (sic)". ietf-http-wg-alte. Abgerufen 2013-03-20.
  10. ^ "Hypertext -Transferprotokoll (HTTP/1.1): Semantik und Inhalt (RFC 7231 § 5.5.2)". Ietf. Juni 2014. Abgerufen 2014-07-26. Das "Referrer" [SIC] -Haellfeld ermöglicht dem Benutzeragenten, eine URI -Referenz für die Ressource anzugeben, aus der die Ziel -URI erhalten wurde […]
  11. ^ a b "Network.http.sendrefererHeader". Mozillazin. 2007-06-10. Abgerufen 2015-05-27.
  12. ^ "HTML DOM -Dokument -Empfehlungseigenschaft". w3schools.com. Abgerufen 2013-03-20.
  13. ^ Gundersen, Bret (2011-10-19). "Die Auswirkungen von Google verschlüsselte Suche". Adobe Digital Marketing Blog. Abgerufen 2021-03-17.
  14. ^ "HTML -Techniken für Webinhalte -Richtlinien 1.0: Das Meta -Element". W3c. 2000-11-06. Abgerufen 2013-03-20.
  15. ^ "Hypertext Transfer Protocol (HTTP/1.1): Semantik und Inhalt: Referrer (RFC 7231 § 5.5.2)". Ietf. Juni 2014. Abgerufen 2014-07-26. Ein Benutzeragenten DARF NICHT Senden Sie ein Referrer -Header -Feld in einer ungesicherten HTTP -Anforderung, wenn die Überweisungsseite mit einem sicheren Protokoll empfangen wurde
  16. ^ "4.12 Links - HTML Living Standard: 4.12.5.8 Link Typ" Norferrer "". Waswg. 2016-02-19. Abgerufen 2016-02-19.
  17. ^ "Inhaltssicherheitsrichtlinie Level 2". W3. 2014. Abgerufen 2014-12-08.

Externe Links