Hotlinking verhindern

Beim Hotlinking werden Bilder, die auf einem anderen Server liegen, auf einer Webseite eingebunden. Hat man ein Projekt mit vielen Bildern, kann das Einbinden der eigenen Bilder in fremden Foren, Communities etc. erheblichen Traffic verursachen. Ein Projekt von mir hat gute Platzierungen in der Google Bilder-Suche und dadurch werden meine Bilder sehr oft unerlaubterweise auf fremden Webseiten eingebunden.

Hotlinking kann man aber ganz einfach verhindern. Am Besten ist dies über die .htaccess zu erreichen. Dazu muss eine Datei mit dem Namen „.htaccess“ im Root-Verzeichnis angelegt werden. Folgende Code-Schnipsel zeigen die verschiedenen Möglichkeiten:

Möglichkeit 1

Ich möchte alle Webseiten das Hotlinking verbieten außer der Google Bilder-Suche. Um den möglichst geringsten Traffic zu erzeugen, liefere ich ein rotes X aus (es wird kein Bild angezeigt). Bei „sfrisch“ muss natürlich die eigenen Webseite eingetragen werden.


RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?sfrisch\.de(/.*)?$ [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]
RewriteRule \.(gif|jpg|GIF|JPG|png|PNG)$ - [F]

Möglichkeit 2

Ich möchte alle Webseiten das Hotlinking verbieten außer der Google Bilder-Suche. Ich liefere stattdessen ein anderes Bild aus, um zu zeigen, dass ich Hotlinking nicht erlaube oder einfach um mein Logo einzublenden. Bei „sfrisch“ muss natürlich die eigenen Webseite eingetragen werden. Wichtig ist hier, dass das Bild nicht eine Dateiendung hat, die wir zuvor verboten haben. Hier ist .gif und .GIF verboten, aber .giF funktioniert noch. Diese Dateiendung muss das Bild haben, das stattdessen angezeit werden soll.


RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?sfrisch\.de(/.*)?$ [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]
RewriteRule \.(gif|jpg|GIF|JPG|png|PNG)$ https://sfrisch.de/anderes-bild.giF [R,L]

Möglichkeit 3

Ich verbiete nur ausgewählten Webseiten das Hotlinking. Alle Anderen dürfen Hotlinking betreiben. Den gesperrten Webseiten wird eine Ersatzgrafik angezeigt. Bei „sfrisch“ muss natürlich die eigenen Webseite eingetragen werden. Bei „fremde-domain“, die zu blckierenden Webseiten. Wichtig ist hier die Dateiendung des Bildes (siehe dazu Erklärung bei Möglichkeit 2).


RewriteEngine on
RewriteCond %{HTTP_REFERER} ^http://www.fremde-domain.de/.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} ^http://www.fremde-domain2.de/.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} ^http://www.fremde-domain3.de/.*$ [NC]
RewriteCond %{REQUEST_FILENAME} !anderes-bild.gif$
RewriteRule \.(gif|jpg|GIF|JPG|png|PNG)$ https://sfrisch.de/anderes-bild.giF [R,L]

Mehr Informationen zum Thema findet ihr auf trafficklau.de und A List Apart. Mit den oben beschriebenen Methoden kann man auch dem Traffic-Klau über die Google Suche entgegenwirken.