Relativ zum Protokoll verlinken

Gerade vorhin im Büro hatten wir dieses Thema erst. Man möchte z.B. in einer CSS-Datei eine Grafik referenzieren (background-image: url("/pfad/zur/datei.png");), jedoch muss die Verlinkung auch die Domain enthalten. Um nicht für Sicherheitswarnungen zu sorgen, bei Seiten die mittels https ausgeliefert werden, könnte man nun auch die Grafik per https ausliefern, jedoch ist das nicht unbedingt sinnvoll im normalen http-Kontext. Innerhalb einer Domain ist dies leicht mittels der absoluten, Domain- und Protokoll-unabhängigen Verlinkung (/pfad/zur/datei.png) möglich. Doch was tun, wenn die Domain, aber nicht das Protokoll festgelegt werden soll?

Die Antwort ist relativ simpel, aber leider gar nicht mal so weit verbreitet. Keine komplizierten Server-Weichen, die unterschiedliche Dateien ausliefern oder nachträgliches Suchen & Ersetzen in der CSS-Datei durch den Server – nein, man lässt einfach das Protokoll und den Doppelpunkt weg:

background-image: url("//webdev-lab.de/pfad/zur/datei.png");

Je nach Kontext wird diese Datei nun per http oder https übertragen. Ein Manko gibt es: Der IE kleiner Version 9 hat einen Fehler bei dieser Einbindung von CSS-Dateien mittels des <link>-Tags, sie holen die Datei zwei Mal ab, einmal per http und einmal per https.

Veröffentlicht von

Hilko

2006 machte ich mein Hobby zum Beruf, startete mit einer Ausbildung zum Mediengestalter und arbeite inzwischen in Hannover als Frontend Web-Developer. Neben der Leidenschaft für semantisches Markup und den Möglichkeiten der aktuellen Frontend-Techniken, interessiere ich mich für das Reisen, fremde Kulturen und die Kunst der Fotografie.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.