La definizione di “hotlinking” significa collegare un’immagine e piazzarla sul proprio sito o blog utilizzando un link ad un’immagine presente sul server di qualcun’altro, magari senza nemmeno chiedere il permesso.

I motivi di un comportamento del genere sono diversi:

  1. Non si vuole perdere tempo nello scaricare l’immagine e poi caricarla sul proprio server
  2. Non si ha a disposizione un proprio server, e non ci si vuol prendere la briga di utilizzare un servizio di hosting gratuito per le immagini
  3. Non si ha a disposizione banda a sufficienza, e si vuole vampirizzare la banda di qualcun’altro
  4. Si vuole deliberatamente creare un disservizio al server da cui si hotlinka, scegliendo immagini molto pesanti da scaricare e linkarle più di una volta.

Il punto 4, in realtà, è poco realistico (per creare DoS ad un server si usano altri metodi) ma il punto numero 1 è quello che parla chiaramente.

Come scoprirlo? Semplice, dalle statistiche del sito web e più precisamente dai referrer esterni che sicuramente saranno di siti web a noi sconosciuti.

Vedremo così che su ognuno di questi siti c’è un hotlink ad un’immagine presente sul nostro server.

Quello che mi interessa sottolineare non è tanto il consumo di banda che può creare questo trucchetto a discapito del malcapitato server ma più che altro il fatto della onestà che spesso sul web viene volutamente dimenticata perchè si pensa che nessuno possa rintracciarti 🙂 … ma non è così !

Se il vostro sito o blog è su un server Apache (Linux), potete usare il metodo del file .htaccess

Questo file è un semplice file di testo, contenente una serie di “regole” riguardanti il modo di gestire le richieste web che arrivano a quella directory.

Con il file .htaccess si possono fare tante cose come:

  • impedire l’accesso a directory
  • evitare che i motori di ricerca indicizzino alcune parti del sito
  • scrivere friendly-URL
  • reindirizzare alcune richieste verso altre pagine
  • impedire che altri utilizzino le vostre immagini direttamente sul vostro server

Per fare ciò, create (qualora non sia già presente) un file chiamato .htaccess (punto.htaccess) nella root del vostro spazio web (server Apache su Linux) ed inserire le seguenti righe:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www.)?example.com/ [NC] RewriteCond %{HTTP_REFERER} !^$
RewriteRule .(jpe?g|gif|bmp|png)$ images/nohotlink.jpg [L]

Ora sostituite al posto di “example.com” il vostro dominio e al posto di “images/nohotlink.jpg” il percorso ad un’immagine che volete appaia al posto dell’immagine hotlinkata.