Protéger ces images

Suite à une constatation d'un chasseur de bug sur projet-ivy, j'ai cherché à empêcher un utilisateur landa d'utiliser nos images (photos) en utilisant l'url pour l'afficher sur un autre site que ceux autorisés. Ce qui n'est déjà pas sympa à faire sans l'accord de l'auteur mais aussi pour ne pas utiliser la bande passante d'un serveur à son profit.


Sous Linux avec Lighttpd.

Avec lighty les .htaccess ne servent à rien donc il faut ajouter les lignes suivantes dans /etc/lighttpd/lighttpd.conf:

$HTTP["referer"] !~ "^($|http://.*\.(domaine1\.be|^$|domaine2\.*|google\.*|yahoo\.*))" {
$HTTP["useragent"] !~ "msnbot-media" {
$HTTP["useragent"] !~ "Mediapartners-Google" {
$HTTP["useragent"] !~ "Yahoo-MMCrawler" {
url.access-deny = ( ".jpg", ".jpeg", ".png", ".gif" )
}
}
}
}

Ce qui signifie... que l'on donne accès aux fichiers: .jpg, .jpeg, .png, .gif uniquement aux sites dont le domaine est:

  • domaine1.be
  • domaine2 point n'importe quels points (be, com, fr, c'est sans importance)
  • Mais aussi aux différents moteur de recherche (ce qui n'est pas du tout obligatoire).

N'hésitez pas à me donner votre avis et proposer les améliorations possibles.