sCHween: htaccess und Bildprotection

Hi
also ich habe meinen Traffic studiert und gesehen dass einer Pics auf meiner Seite linkt. Jetzt dachte ich ich mach da ne htaccess Datei rein, die den Ref überprüft und sonst ein anderes Bild ausgibt, aber es funzt nicht und ich wiess nicht warum!

Hoffe Ihr könnt mir die nötigen Denkanstösse geben besten Dank.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?sub.domain.ch/.*$ [NC]
RewriteRule ^(.*)$ http://sub.domain.ch/files/adsf/seb.gif [R,L]

  1. Hallo,

    RewriteCond %{HTTP_REFERER} !^$

    hier fehlt schonmal ein [OR] am Ende.

    Ansonsten empfehle ich Dir, einfach darauf zu prüfen, ob der Referrer
    eben der von der "bösen" Domain ist. Solange es nicht überhand nimmt,
    triffst Du damit nicht die Leute, die aus welchem Grund auch immer
    ihren Browser so konfiguriert haben, dass er einen anderen URL
    als Referrer ausgibt.

    RewriteEngine on
    RewriteCond %{HTTP_REFERER} domain.xy [NC]
    RewriteRule ^/.*$ - [F,L]

    Viele Grüße,
    Stefan

    1. hier fehlt schonmal ein [OR] am Ende.

      stimmt natürlich nicht, habe Dein Beispiel nur überflogen und etwas
      verwechselt, sorry.

      Viele Grüße,
      Stefan

    2. hi ich möchte aber anstatt ein 403 den ich mit [F] ausgebe ein anderes Bild ausgeben!?
      den 403 funktioniert ohne Troubles in meinem Bsp..aber das Bild :/

      1. Hallo,

        hi ich möchte aber anstatt ein 403 den ich mit [F] ausgebe ein anderes Bild ausgeben!?
        den 403 funktioniert ohne Troubles in meinem Bsp..aber das Bild :/

        auch wenn Du den Redirect auf die Bilddatei beschränkst, also
        RewriteRule ^/bild ... ?

        Weil im Moment bleibt ja der Referrer bestehen und wird wohl eine
        Endlosschleife entstehen. Oder kannst Du das "Ausweichbild" auf
        einem anderen Server ablegen und dorthin weiterleiten? Oder
        in der RewriteCond auch gleich prüfen, ob das Bild aufgerufen wird?

        Viele Grüße,
        Stefan

        1. hm oke stimmt habs jetzt (das Alternativbild) in den Rootbereich kopiert da hat es keine Überprüfungen, es funzt immer noch nicht!

        2. auch wenn Du den Redirect auf die Bilddatei beschränkst, also
          RewriteRule ^/bild ... ?
          Weil im Moment bleibt ja der Referrer bestehen und wird wohl eine

          Hei Stefan...
          Jetzt glaub ich merk ich langsam was läuft.
          Also ich hab die Rules und alles drin. Wenn ich nun direkt auf das Bild will (auch mit falschen Ref) funzts, es wird das Alternativbild angezeigt. Aber sobald ich die Bilder extern auf eine html Seite einbinde erscheint nur ein forbidden. :( ich möchte aber dass da mein Alternativbild erscheint *eek*

  2. RewriteEngine on
    RewriteCond %{HTTP_REFERER} !^/$
    RewriteCond %{HTTP_REFERER} !^http://www.sub.domain.ch/.*$ [NC]
    RewriteRule ^.*$ http://sub.domain.ch/files/adsf/seb.gif [R,L]

    Klappt das?
    Wie genau lautet der Fehler im Error-Log/Rewrite-Error-Log?

    1. RewriteEngine on
      RewriteCond %{HTTP_REFERER} !^/$
      RewriteCond %{HTTP_REFERER} !^http://www.sub.domain.ch/.*$ [NC]
      RewriteRule ^.*$ http://sub.domain.ch/files/adsf/seb.gif [R,L]

      Klappt das?
      Wie genau lautet der Fehler im Error-Log/Rewrite-Error-Log?

      Hmm, Du wolltest die Regeln nur bei Bilddateien greifen lassen, richtig? Dann natürlich statt "jedem Zeichen egal wie oft" also allem nur die Zugriffe auf Bilddateien umleiten (zudem fehlten ein paar ''):

      RewriteEngine on
      RewriteCond %{HTTP_REFERER} !^/$
      RewriteCond %{HTTP_REFERER} !^http://www.sub.domain.ch/.*$ [NC]
      RewriteRule ^.*.(gif|jpg|jpeg|png|GIF|JPG|JPEG|PNG)$ http://sub.domain.ch/files/adsf/seb.gif [R,L]

      1. RewriteEngine on
        RewriteCond %{HTTP_REFERER} !^/$
        RewriteCond %{HTTP_REFERER} !^http://www.sub.domain.ch/.*$ [NC]
        RewriteRule ^.*$ http://sub.domain.ch/files/adsf/seb.gif [R,L]

        Klappt das?
        Wie genau lautet der Fehler im Error-Log/Rewrite-Error-Log?

        Hmm, Du wolltest die Regeln nur bei Bilddateien greifen lassen, richtig? Dann natürlich statt "jedem Zeichen egal wie oft" also allem nur die Zugriffe auf Bilddateien umleiten (zudem fehlten ein paar ''):

        RewriteEngine on
        RewriteCond %{HTTP_REFERER} !^/$
        RewriteCond %{HTTP_REFERER} !^http://www.sub.domain.ch/.*$ [NC]
        RewriteRule ^.*.(gif|jpg|jpeg|png|GIF|JPG|JPEG|PNG)$ http://sub.domain.ch/files/adsf/seb.gif [R,L]

        Noch besser ist natürlich

        RewriteRule ..(gif|jpg|jpeg|png|GIF|JPG|JPEG|PNG)$ http://sub.domain.ch/files/adsf/seb.gif [R,L]

        Kürzer und Verzeichnisse matchen nicht.