Was es zu berichten gibt

Erzählen Sie's ruhig weiter!

News

Neue Projekte, neue Produkte oder einfach Interessantes rund um Software, Web Design und Hardware: hier bekommen Sie alle Neuigkeiten von BlueChip. Also, öfter mal vorbeischauen! Einfacher ist es natürlich, wenn Sie sich hier für unseren Newsletter anmelden.

HTTPS und Referrer: Warum nach einer SSL Umstellung die direkten Zugriffe zugunsten der Verweiszugriffe steigen, und was wirklich dahinter steckt

Durch den Aufwind von HTTPS bei Webseiten entstehen neue Probleme, die es gilt, sauber zu lösen. Eines dieser Probleme ist der Verlust des Referrers bei Links von HTTPS-Seiten auf HTTP-Seiten. Dadurch gehen v.a. in diversen Tracking-Tools wie Google Analytics die entsprechenden Daten verloren.

Problematik am Beispiel Google Analytics

Hat man seine eigene Webseite erfolgreich auf HTTPS umgestellt, wird man sich nach einiger Zeit fragen, warum in Google Analytics die direkten Zugriffe gewinnen, während die Verweiszugriffe verlieren. Der einfache Grund ist, dass der Referrer bei Links von HTTPS-Seiten auf HTTP-Seiten nicht mitgesendet wird. Dadurch erkennt Google Analytics nicht, dass es sich um einen Verweis handelt und behandelt den Zugriff als direkt.

Mancher wird jetzt vermutlich fragen: aber ich habe doch meine Seite auf HTTPS umgestellt, warum geht der Referrer trotzdem verloren. Das Problem ist, dass der Link auf externen Seiten nach wie vor mit HTTP aufgerufen wird. Selbst wenn dann eine Umleitung auf HTTPS erfolgt, ist es bereits zu spät, weil der Referrer schon entfernt wurde.

Technische Erklärung

Man könnte jetzt meinen, dieses Verhalten wäre ein Fehler. Tatsächlich ist es aber so, dass dieses Verhalten gewünscht ist. In der technischen Beschreibung zum HTTP Protokoll 1.1, dem RFC 2616 steht folgendes:

"Clients SHOULD NOT include a Referrer header field in a (non-secure) HTTP request if the referring page was transferred with a secure protocol."

Der Grund für diese Festlegung im Standard ist, dass über Urls sensible Daten transportiert werden können. Innerhalb von HTTPS-Seiten ist das kein Problem, aber sobald man den verschlüsselten Bereich verlässt, also auf HTTP wechselt, können diese sensiblen Informationen aus dem Referrer von einem Angreifer ausgelesen werden.

Für alle andere Kombinationen wird der Referrer mitgeschickt, weil die Verbindung entweder immer sicher ist und somit ein Angreifer die Daten nicht auslesen kann, oder aber weil die Ausgangsverbindung unsicher (also nur HTTP), und somit ein Auslesen bereits auf der Ursprungsseite erfolgen kann:

Link Referrer mitgeschickt?
HTTP auf HTTP ja
HTTP auf HTTPS ja
HTTPS auf HTTP nein
HTTPS auf HTTPS ja

Lösungsansätze

Falls eine Webseite keine solchen sensiblen Daten in den Urls transportiert, gäbe es einen technischen Ansatz, um das Problem für HTTP-Links auf der eigenen Seite zu lösen. Über den Metatag im HTML-Quelltext kann dem Browser mitgeteilt werden, wie mit dem Referrer bei Links auf HTTP-Seiten umgegangen werden soll. Das Verhalten wird über den Wert im Attribut "content" gesteuert. Leider wird dieser Metatag nicht von allen Browsern unterstützt, weshalb es nur bedingt als Lösung funktioniert.
Davon abgesehen betrifft das wie gesagt nur die Links auf der eigenen Seite und hilft nur den Seiten der Drittanbieter. Die eingehenden Links auf die eigene Seite von anderen Webseiten sind davon nicht berührt. Man könnte den jeweiligen Webseitenbetreiber zwar dazu auffordern, den oben genannten Metatag einzubauen, aber das wird aufgrund der nicht vollständigen Browserunterstützung nur teilweise funktionieren.

Die sauberste Lösung ist und bleibt, auf der externen Seite den Link auf HTTPS ändern zu lassen. Neben den Auswirkungen auf den Referrer und damit auf die Tracking Tools, kann das auch für SEO leichte Verbesserungen bringen.