kostenloser Webspace werbefrei: lima-city


Hotlinking mit .htaccess verhindern bei PHP-Dateien

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    mpsftp

    mpsftp hat kostenlosen Webspace.

    Hallo zusammen,

    mit htaccess-Dateien kenne ich mich nicht so wirklich aus, zumal es auch wenige Tutorials im tag/netz">Netz dazu gibt.

    Ich habe in der htaccess nun folgendes stehen:

    <IfModule mod_rewrite.c>
       RewriteEngine On
       RewriteCond %{HTTP_REFERER} !^$
       RewriteCond %{HTTP_REFERER} ^http://www\.BLABLABLA\.de.*$ [NC]
       RewriteCond %{REQUEST_URI} !^.*hotlink\.jpg$ [NC]
       RewriteRule ^.*\.(gif|jpg|png|jpeg)$ https://www.ep-board.de/images/hotlink.jpg [NC,R,L]
    </IfModule>


    Ich möchte nun, dass alle Bilder für die Seite BLABLABLA von uns ersetzt werden mit dem hotlink.jpg.

    Klappt soweit ganz gut. Das Problem ist jedoch nur, dass wir auch Bilder haben, mit der Dateiendung php. Sprich:

    https://www.ep-board.de/download/file.php?id=1234567890

    Das sind auch Bilder, die da raus kommen. Wie sperre ich diese für diese bestimmte Seite? Meinetwegen auf via PHP-Code.

    Google lässt dort auch nichts finden, bis auf das hier:

    RewriteRule download/file\.(php)$ https://www.ep-board.de/images/hotlink.jpg [F]


    Dann gehen aber nirgendswo mehr Bilder und die werden auch nicht ersetzt.

    Vielen Dank schon einmal im voraus.

    EDIT: Habs gelöst bekommen:

    <IfModule mod_rewrite.c>
       RewriteEngine On
       RewriteCond %{HTTP_REFERER} !^$
       RewriteCond %{HTTP_REFERER} ^http://www\.BLABLABLA\.de.*$ [NC]
       RewriteCond %{REQUEST_URI} !^.*hotlink\.jpg$ [NC]
       RewriteRule ^.*\.(gif|jpg|png|jpeg)$ https://www.ep-board.de/images/hotlink.jpg [NC,R,L]
    </IfModule>
    
    
    <IfModule mod_rewrite.c>
       RewriteEngine On
       RewriteCond %{HTTP_REFERER} !^$
       RewriteCond %{HTTP_REFERER} ^http://www\.BLABLABLA\.de.*$ [NC]
       RewriteCond %{REQUEST_URI} !^.*hotlink\.jpg$ [NC]
    RewriteRule ^.*file\.(php)$ https://www.ep-board.de/images/hotlink.jpg [NC,R,L]
    </IfModule>


    Beitrag zuletzt geändert: 10.9.2015 20:00:33 von mpsftp
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Du kannst auch beide Rewrite-Rules direkt nacheinander packen, das spart dir die doppelte Wartung, wenn ggf. eine neue Domain dazu kommt. Dran denken: Es kann auch die Domain mit/ohne WWW sein:
    ^http(s)?://(www\.)?example\.com [NC]

    sollte auch tun.

    Anstatt zum Bild würde ich persönlich gleich zur Info zum Thema Hotlinking verweisen. Oder ggf. Anhänge nur für registrierte Benutzer zulassen.

    OT: Das Internet ist klein, bei euch im Board hab' ich mich nach langem Mitgelese vor ein paar Tagen auch mal registriert. :)
  4. Autor dieses Themas

    mpsftp

    mpsftp hat kostenlosen Webspace.

    Oh, hallo :D Kleine Welt, selbst im Netz

    Der Code dient eigentlich nur dazu, um unsere Bilder und Dateianhänge auf einer bestimmten Seite zu verbieten, die unsere Bilder mehrfach auf ihrer Seite einbindet und das auch teilweise ohne oder mit sehr schlampigen Quellenangaben. Deshalb soll es ein schöner großer roter Hinweiß werden.

    Das Problem wäre, wenn ich das ganze zusammen lege, dass auch bei uns im Board alle Bilder und Dateianhänge dementsprechend ausgetauscht werden. Das sollte ja nun nicht sein. So habe ich eben kurz auch mal das Board zerbombt.
  5. Schön, dass es so funktioniert. Der Vollständigkeit halber aber doch noch: :D

    Klar, so ganz einfach "untereinander" klatschen ist nicht.
    Statt direkter Weiterleitung eine Variable setzen und dann vor der RewriteRule die Variable abfragen.

    Oder: Die RewriteConds anpassen, dass alles weitergeleitet wird, was Bild/Download (REQUEST_URI) ist und den böse Referer hat.
  6. Autor dieses Themas

    mpsftp

    mpsftp hat kostenlosen Webspace.

    Jetzt komm ich nicht mehr mit... - Sorry, aber htaccess ist (noch) nicht so meine Stärke.
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!