2010
Feb
25

Usare il file “.htaccess” per bloccare l’hotlinking


Deprecated: Non-static method StringParser_Node::destroyNode() should not be called statically, assuming $this from incompatible context in /membri2/asbruff/flatpress/fp-plugins/bbcode/inc/stringparser.class.php on line 358

broken_link.jpg Continuiamo a parlare di “.htaccess”, oggi vediamo come bloccare gli hotlink alle immagini residenti nel nostro server.

Già ieri abbiamo parlato di come proibire l’accesso alle nostre immagini da siti esterni (come spesso accade con forum o siti amatoriali), che non fanno altro che incrementare l’uso della banda, riducendo le risorse del nostro server. Nel caso di ieri l’utente vedrà il simbolo di immagine mancante, chi prova a collegarsi direttamente al sito ottiene l’errore “403 Forbidden”.

Oggi ci vogliamo invece divertire. Non sarebbe divertente se l’utente al posto di vedere l’immagine mancante vedesse un’altra immagine che lo esorta a non linkare dal nostro server? Questa volta dovremo creare un file “.htaccess” direttamente nella directory delle immagini. E’ possibile creare più “.htaccess” su di un server. Se ne possono creare uno per ogni directory. Vediamo come sarà il nostro per le immagini:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(.*\.)?thejoe.co.nr [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(.*\.)?ppalinks.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(.*\.)?drupal.org [NC]
RewriteRule \.(jpeg|jpg|gif|png)$ http://example.org/bad.jpg [NC,R,L]

In effetti questo codice filtra le immagini richieste basandosi sul sito che ha inoltrato la richiesta. Queste righe hanno effetto solo sulle immagini con estensione jpeg, jpg, gif, o png.

Forse non è chiaro a tutti, ma con queste regole è possibile vietare l’”hotlink” delle immagini a tutti indistintamente, permetterlo solo ad alcuni. Le righe 3, 4 e 5 permettono l’hotlink solo ai domini elencati. L’ultima riga effettua il “redirect” a chiunque non sia elencato all’immagine “bad.jpg” sul server “example.org”.

Ricordiamoci, se stiamo reindirizzando qualcuno ad un’immagine differente, non deve trovarsi nella directory delle immagini del nostro server, o innescheremo un loop infinito.

Chiaramente l’hotlinking si può applicare a qualsiasi tipo di file, non solo alle immagini. Con la seguente riga blocchiamo anche gli zip e gli mp3 restituendo il codice “403 Forbidden”:

RewriteRule \.(jpeg|jpg|gif|png|mp3|zip)$ - [F]

Strict Standards: Only variables should be passed by reference in /membri2/asbruff/flatpress/fp-includes/core/core.fpdb.class.php on line 268

Deprecated: Non-static method StringParser_Node::destroyNode() should not be called statically, assuming $this from incompatible context in /membri2/asbruff/flatpress/fp-plugins/bbcode/inc/stringparser.class.php on line 358

Calendario


Strict Standards: Only variables should be passed by reference in /membri2/asbruff/flatpress/fp-includes/core/core.fpdb.class.php on line 256

Tags

  rSync     Gimp     GoogleBuzz     Alien     Prey     Ajax     Linux4one     Tech     Social Network     Web     htaccess     Html         Software     HowTo     Sicurezza     OpenVZ     SplitToning     Audacity     mac4lin     Nokia     Gnome     Ubuntu     Sourceforge     Linux     Mencoder     Grafica     Mac OS X     Google     Tilda     Pure|dyne     Css     Global menu     Tips     Distribuzioni     Dyne|bolic     hoster     Pidgin     Netbook     SongBird     TrueCrypt     Hydrogen     Shell     Audio     CentOS     Video     Siti     Samba     Brushes     MPD     StyleShout.com     Php     ChromeOS     Linutop     Youtube     Jack     GnomeMusicPlayerClient     Blog     SivamDesign.com     Aruba     Stampa     Tutorial     Ardour     Fotoxx     Meebo     Javascript     Fedora     Symbian     Open Source     Xfce4     Gmail     WebArchive     AspirOne     Firefox     VHosting     Flatpress     GoogleVideo  

Admin area