Fremdverlinkung von Bildern verhindern

Diskutiere über Web-Entwicklung, Coding und Websites.
Antworten
Benutzeravatar
Captain
Major General
Major General
Beiträge: 18373
Registriert: So 02 Jan, 2005 19:50
Wohnort: Stuttgart

Fremdverlinkung von Bildern verhindern

Beitrag von Captain »

Wenn man so manches Bild auf seiner Homepage hat, dann gibt es immer jemanden, der sich das zunutze macht und von seiner Homepage auf deine Pics verlinkt. Schön und gut, zumindest solange sich das in Grenzen hält, wenn erstmal einige Seite das machen, steigt der Traffic und damit die Probleme oder sogar die Kosten.

Was tun? Ganz klar: Fremdverlinkung verbieten. Aber wie? Selbst will man die Pics ja noch einbauen können auf der Page und vielleicht hat man ja auch einige Subdomains am Start, die auch direkt auf die Pics zugreifen.

Die Lösung bietet MOD_REWRITE, ein Modul des Apache:

Code: Alles auswählen

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)domain.de(/.*)?$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(.*)domain.de(/.*)?$ [NC]
RewriteRule .(gif|jpg|jpeg|GIF|JPG|PNG|JPEG)$ - [F]
Diese Anweisung gehört in die .htaccess des Webservers und zwar ins Root. Die dritte Zeile besagt, dass die URL "www.domain.de" die Bilder nutzen darf. Sprich: Was Beispielsweise in www.domain.de/images liegt wird problemlos angezeigt.

Die 4. Zeile kümmert sich dann um die Subdomains. (.*) bedeutet nämlich "Kein oder mehr beliebige Zeichen.". Also funktioniert damit auch "domain.de" und "xyz.domain.de".

Mod_rewrite ist ein bisschen Voodoo, die ganzen zeichen muss man erstmal checken. Eine gute Anleitung findet sich hier:
http://www.modrewrite.de/mod_rewrite.syntax.phtml
Benutzeravatar
Rechtsteufel
Brigadier General
Brigadier General
Beiträge: 13662
Registriert: So 05 Nov, 2006 16:01

Beitrag von Rechtsteufel »

Und was wird dann angezeigt, wenn jemand anderes trotzdem verlinkt?
Benutzeravatar
Captain
Major General
Major General
Beiträge: 18373
Registriert: So 02 Jan, 2005 19:50
Wohnort: Stuttgart

Beitrag von Captain »

Bei dem obigen Beispiel schlicht nichts oder im IE ein rotes Kreuz. Is ja nich dein Problem^^

Du kannst aber auch ein alternatives Bild einblenden.

Dazu ersetze die letzte Zeile durch:
RewriteRule .(gif|jpg|png|jpeg|GIF|JPG|PNG|JPEG)$ http://www.domain.de/ersatzbild.jpg [R,L]
Antworten