Comment protéger les images de son site?

1 message   •   Page 1 sur 1
ViPHP
ViPHP | 1380 Messages

04 sept. 2006, 10:37

Le problème:

On passe des heures à peaufiner une belle image et on s'aperçoit qu'elle a été honteusement copiée. Pire, un site à forte consultation insère directement des balises <img> pointant vers les images de son propre site faisant exploser notre forfait de bande passante!

En matière de protection d'images il n'y a effectivement pas de protection absolue. Mais on peut, par différentes techniques, arriver à un certain niveau de protection contre un utilisateur moyen.

Il faut travailler sur la variable serveur HTTP_REFERER.

Imagine que les pages xxx.php ou yyy.html se trouvent dans le répertoire /test/ et les images dans /test/images/

A mettre dans un .htaccess dans le répertoire /test/images/ :

Code : Tout sélectionner

# blocage sélectif de toutes les pages *.html et *.php sauf si page_ok existe # Allow from env=page_ok autorise l'accès si la variable page_ok existe SetEnvIf Referer "^http://www.notre-site.com/test/.*\.(php|html?)$" page_ok <FilesMatch \.(?i:gif|jpe?g|png)$> Order Deny,Allow Deny from all Allow from env=page_ok </FilesMatch>
Seules les images demandées depuis des pages *.php, *.htm ou *.html seront affichées. Si elles sont demandées directement avec l'URI directe http://www.notre-site.com/test/images/mon_image.gif elles seront bloquées.

De la même manière, si nos images sont appelées depuis un site extérieur non autorisé, elles ne s'afficheront pas.

Remarques:
  • Le HTTP_REFERER envoyé dans un header par le navigateur peut facilement être modifié par des "plug-ins", modules, extensions ou autres Widgets. Ceci ne constitue donc pas une protection absolue. C'est juste une dissuasion de base. Un peu comme si la porte d'entrée de ta maison était blindée et verrouillée mais la porte de derrière est restée ouverte!
  • Nécessite le module Apache env_module
ripat

1 message   •   Page 1 sur 1