Google Images : Ras le bol des "pirates" !!!

WRInaute accro
Bonjour

Dans un coup de folie ce matin, j'ai purement et simplement interdit tout hotlink d'images depuis n'importe quel site autre que les miens, ou les quelques forums où j'interviens (ben oui : ras le bol de voir MES images apparaître dans Google Images sur D'AUTRES SITES mais avec MES FICHIERS sur MON SERVEUR)

Juste une question : où pourrais-je avoir la liste des urls à "autoriser" concernant les moteurs (et pas seulement Google) ?


Voici mon fichier htaccess :

Code:
ErrorDocument  404  /404.php

Options +FollowSymlinks
RewriteEngine on 
# Gestion des hotlinks d'images
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.|blog.|reportages.)?aube-nature.com
RewriteCond %{HTTP_REFERER} !^http://(www.|photos.)?chatterie-koolkat.com
RewriteCond %{HTTP_REFERER} !^http://(www.)?koolkat.fr
RewriteCond %{HTTP_REFERER} !^http://(www.)?mainecoon.fr
(ici ma liste de sites "autorisés")
RewriteCond %{HTTP_REFERER} !^http://(www.|images.)?google.fr
RewriteCond %{HTTP_REFERER} !^http://(www.|images.)?google.com
ReWriteRule .*\.(gif|png|swf|jpe?g|jpg)$ - [F]

J'aimerais autoriser par ex. tous les sites Google à "voir" mes images (et tant que j'y suis : msn, yahoo...)

Si quelqu'un a cette liste !

J'ai essayé d'utiliser l'outil Visohotlink, mais mon organisation étant "spéciale" je n'ai pas réussi à le faire fonctionner convenablement (en fait images hébergées sur plusieurs domaines...)

Sinon j'ai finalement installé un anti-clic droit sur les pages d'affichage de mes images. Stupide mais ça "filtrera" une grande partie des ados boutonneux qui s'adonnent à ce pillage en règle :evil: (et truc marrant : on peut même pas "glisser" l'image sur la zone d'adresse car toutes mes images sont linkées vers la home de la galerie photo !)

Sinon j'ai vu sur un site qu'on pouvait interdire d'afficher la source 8O ; ça ne fonctionne que sous IE, mais si je peux récupérer le script ça sera toujours ça de plus !
 
WRInaute passionné
C'est dur les sites de photos surtout quand elles sont splendides comme les tiennes.

Cela dénature la photo mais pourquoi ne fais-tu pas au moins une "watermark" avec l'URL de ton site ?
 
WRInaute discret
je viens de poster sur le forum .htaccess

Ce message :

Bonjour,

Un blog XX, sous couvert de me faire de la pub, a fait un sujet entierement avec le code (textes, images) de ma page d'accueil.

Tout cela sans autorisation bien sur, en utilisant la bande passante de MON herbergeur.

Le sujet du post de ce bloggeur indélicat : "XX bricole bio".

Le sujet précédent est du même accabit : le contenu texte est pompé sur le site l'internaute. No comment.

Comment via le .haccess bloquer ce genre de copie ? Merci !


ps : j'ai envoyé un mail (gentil mais ferme) à l'affreux jojo..."


Donc je compatis Cédric... et vais étudier sérieusement ton code et voir pour une "watermark"...
 
WRInaute discret
J'avais mis un script similaire au tien (mais moins complexe) pour l'interdire sur mon site mais j'ai rapidement eu l'impression que ça faisait pas mal ramer le serveur. A chaque requête sur une image, il faut en effet qu'il vérifie s'il a le droit de l'afficher ou non, même en interne. Sur une galerie avec 30 thumbnails, c'est très long !

De plus, mon script était moins subtil que le tien et interdisait l'indexation par Google/Yahoo images. Au passage, les moteurs d'images sont de loin les plus grands "hotlinkers" qui existent. Pour une visite générée sur le site, combien d'images sont affichées sans que les internautes ne viennent voir la page sur laquelle elle se trouve ?

Bref, j'ai fini par mettre un petit watermark semi transparent visible par exemple sur cette photo (comme le suggère bee_human ci dessus).

Ca permet de gêner un peu la récupération des photos pour l'impression, problème que tu as apparemment eu récemment aussi. (cf ton post sur Photim). La forme du watermark rend le recadrage embêtant à faire sur certaines photos (pas celle ci, je le reconnais).
J'ai fait un script qui automatise le positionnement du watermark lors de la création des images pour le web.
 
WRInaute passionné
Salut, je pense qu'hotlinker un site est pire que de laisser libre accès aux images, tu va favoriser le vol réel de tes photos (qui sont très belles !)(et tu n'aura absolument plus d'échos de leurs destinations ... commerciale peut être) alors que les laisser libres d'accès te donne une part de circulation.
Envoyer un courriel pour que les gens y ajoute un lien vers ton site est la meilleur politique à adopter ( c'est ce que je pratique) pour augmenter encore la popularité de ton site (BL en nombre).

A+
 
WRInaute discret
Salut,

J'ai un peu le même problème (même si mes photos sont bien moins belles... :)) J'ai opté pour le passage par un script PHP qui ajoute une mention en bas de l'image lorsque celle-ci n'est utilisée sur mon site. ça marche plutôt bien. ce qui donne par exemple :
la_fonte_des_neige_alimente_le_lac_full.jpg

par rapport au script, j'ai ajouté l'écriture d'un fichier texte qui est régulièrement converti en HTML. J'y jette un coup d'oeil de temps en temps pour voir qui utilise mes photos et si il y en a qui abuse, je bloque avec apache.
 
WRInaute accro
Excellent ton script Tigrou !

En fait la problématique est "aussi" que Google Images utilisait mon image en pointant vers MON site, mais que de plus en plus souvent, la même image est affichée mais avec la page du PIRATE :evil:

Donc je perds du trafic, inévitablement (accessoirement, sur UNE photo j'ai perdu ainsi 40 visites/jour car c'était celle qui me ramenait le plus de trafic depuis Google Images ! C'est comme ça que je m'en suis aperçu en fait)

Et comme Google Images est lentissime à se mettre à jour, vous imaginez l'impact :x
 
WRInaute passionné
A propos de GG images, j'ai remarqué qu'actuellement et effectivement j'ai comme toi des images qui mènent vers d'autres sites (sur lesquels je les ai mise personnellement), je pense que c'est un réglage en cours de GG images et que nous retrouverons les images à leur bonne place rapidement, cela a commencé il y a environ 1 mois (peut être un peu plus).

++
 
WRInaute passionné
Au moins oui, en fait de mon côté toutes les requètes images sur GG mènent en ce moment (images de têtes) vers de grandes photos mises sur d'autres sites...

D'ailleur le référencement des images de mon site est passé de près de 3000 à 260 (avec quelques varaitions ces jours-ci) dans le même temps (le site a environ 4400 documents images).

-http://images.google.fr/images?hl=fr&ie=UTF-8&oe=UTF-8&q=allinurl%3Adestin-tanganyika.com%20site%3Adestin-tanganyika.com&um=1&sa=N&tab=wi
 
WRInaute accro
Visio hot link me donne les référents. Je suis comme toi j'utilise mes images sur plusieurs sites, il va falloir que je me plonge un peu dans le détail, sachant qu'à priori c'est aussi possible d'autoriser des domaines entiers.

Maintenant, la seule solution, c'est malheureusement le watermark. Judicieusement placé, il n'abîme pas trop l'image, et il est difficile à enlever.
Je m'y suis résolue, malheureusement, depuis que j'ai retrouvée imprimée en 1m50 de haut une de mes images à partir d'un fichier de 600 pixels de haut. Parce que sans watermark, il suffit d'une copie d'écran.

J'ai bien envie d'interdire à Google l'indexation de mes images. Je pense qu'elles me rapportent beaucoup plus de pirates que de clients.
 
WRInaute impliqué
Pas bête du tout le principe de ton script Tigrou.
C'est une bonne solution.

Je ne comprends pas trop l'intérêt d'encoder en md5 le nom du fichier dans le répertoire cache...

Edit: J'ai compris. C'est parce que tu as plein de sous-répertoires...
 
WRInaute accro
Bon, après plusieurs heures à tout retourner dans tous les sens, j'y arrive poooooo :cry:

Petit apparté : le scriptage en MD5, p'têt pour pas que les moteurs le référencent, tout simplement ? :wink:

Le htaccess.fi est placé dans le répertoire contenant mes images, et qui contient donc :
Code:
/cache_img/  (répertoire où seront générées les versions "marquées" des images
/share/ (contient [i]arial.ttf[/i])
hotlink.php
htaccess.fi
1254-toto-en-slip.jpg
4582-tata-en-maillot-de-bain.jpg
etc... (toutes mes images)

Le code de mon htaccess.fi :

Code:
Options +FollowSymlinks
RewriteEngine on 

IndexIgnore *.fi

<Files *.fi>
order allow,deny
deny from all
</Files>

# Gestion des hotlinks d'images
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www.|blog.|reportages.)?aube-nature.com [NC]
(ici mes autres domaines, sur le même modèle)
RewriteCond %{HTTP_REFERER} !^http://images\.google\..*$ [NC]
RewriteRule .*\.jpg$ /hotlink.php?img=%{SCRIPT_FILENAME}&ref=%{HTTP_REFERER}


Et le code PHP du fameux script hotlink.php :

Code:
<?php
define('IMAGE_CACHE_DIR', 'cache_img/');
define('TTF_FONT', 'share/arial.ttf');
define('IMG_TEXTE', 'COPYRIGHT - http://www.aube-nature.com');
define('BASE_FONT_SIZE', 25); // font size pour 1000px large

if ( !array_key_exists('img', $_GET) )
	exit();
$image = $_GET['img'];
if ( $image{0} == '/' )
	$image = substr($image, 1);
if ( !is_image($image) )
	exit();
tag_image($image, IMG_TEXTE);

function tag_image($image, $message)
{
	$tagImageName = IMAGE_CACHE_DIR.md5($image).'.jpg';
	if ( !file_exists($tagImageName) )
	{
		$imgInfo = getImageSize($image);
		$imgRessource = imageCreateFromJPEG($image);
		$color = imageColorAllocate($imgRessource, 255, 255, 255);
		$fontSize = get_font_size($imgInfo[0]);
		$coordInfo = get_start_coordinates($imgInfo[0], $imgInfo[1], $fontSize, $message);
		imageTTFText($imgRessource, $fontSize, 0, $coordInfo['x'], $coordInfo['y'], $color, TTF_FONT, $message);
		imageJPEG($imgRessource, $tagImageName);
	}
	header('Content-type: image/jpg');
	header('Content-length: '.filesize($tagImageName));
	readfile($tagImageName);
}

function get_font_size($width)
{
	return ceil($width*BASE_FONT_SIZE/600);
}

function get_start_coordinates($imgWith, $imgHeight, $fontSize, $text)
{
	$result = array();
	$boxInfo = imageTTFBBox($fontSize, 0, TTF_FONT, $text);
	$widthBox = $boxInfo[2] - $boxInfo[0];
	$heightBox = $boxInfo[3] - $boxInfo[1];
	$result['x'] = $fontSize;
	$result['y'] = $imgHeight - $heightBox - $fontSize;
	return $result;
}

function is_image($file)
{
	if ( !file_exists($file) || !@getImageSize($file) )
		return false;
	return true;
}

?>


Le bignz se trouve certainement dans ce script, je pense au niveau du paramétrage, mais je n'arrive pas à trouver d'où ça vient ! Les images ne sont pas affichées sur les sites "hotlinkeurs" (donc le htaccess fonctionne !)

Le répertoire de cache des images a 777 en droits d'accès. Je ne vois pas ce qui ne va pas !

Si un spécialiste a une idée ?...
 
WRInaute impliqué
Tu as vérifié que tu avais la librairie GD sur ton PHP ?
Tu as toi aussi tes fonts dans un répertoire /share ?
Appelle le script directement pour voir si le problème ne vient pas du htaccess... (slash de début par ex.)
Est-ce que tu vois des fichiers dans ton repertoire Cache ?
 
WRInaute discret
Bonjour
Après quelques expériences désagréables, à mon avis la seule solution pour préserver son travail des liens sauvages ou des captures d'écrans, c'est de placer un copyright (son nom, son email, son URL,...) sur ses photos...

Un ami à moi s'est entièrement fait dépouillé de son site web (à but non commercial) par un homme assez osé pour tout remettre sur un autre site avec plein de publicités. Le pire est que la copie est beaucoup mieux placée sur google que l'original.
 
WRInaute discret
Remi> Oui le md5 est car je peux avoir une image nommée de la même manière à différents endroits de l'arborescence.

cecdric_g> le htaccess appelle /hotlink.php si le script est dans un sous répertoire, ça marchera pas. Je pense qu'il faut que tu modifies ce point. Comme le dit Remi, teste en appelant directement le script avec des paramètres pour voir ce qui se passe.
 
WRInaute accro
OK, je vais faire un essai.

Mon script, les sous-réps et le htaccess sont dans le répertoire des images.
 
WRInaute accro
BINGO

Bon, l'erreur vient du fait que "à priori" le chemin de l'image est passé en intégralité : si je passe uniquement le NOM de l'image (par ex. "1234-toto-en-slip.jpg", je retrouve bien cette image avec mon watermark !

Euh par contre je fais quoi : split de la chaîne sur les "/" et prise en compte uniquement du dernier morceau ?...
 
WRInaute accro
UP

Bon, maintenant le script fonctionne bien... si je l'appelle seul :twisted:

Mais sur les autres sites, ça marche pô. Donc pb de Htaccess cette fois je pense ! Je continue mes recherches...


Voilà la modif que j'ai fait :

if ( !array_key_exists('img', $_GET) )
exit();
$image = nom_de_fichier($_GET['img']);
if ( $image{0} == '/' )
$image = substr($image, 1);
if ( !is_image($image) )
exit();
tag_image($image, IMG_TEXTE);



function nom_de_fichier($filename) {
$pos = strrpos('/'.$filename, '/');
if($pos===false) {
return false;
} else {
return substr($filename, $pos);
}
}
 
WRInaute discret
Salut,

oui effectivement, chez moi tout est positionné par rapport à la racine.
Par contre pour avoir uniquement le nom du fichier en paramètre, tu peux utiliser fonction PHP basename
 
WRInaute accro
En fait le soucis, c'est que par défaut, ton script me retournait "http://www.../1234-toto-en-slip.jpg" dans la variable $image !

(enfin je crois, mais bon c'est pas le problème à priori !!!)



J'ai du mal à saisir comment fonctionnent les htaccess, non pas au niveau de la syntaxe, mais au niveau de l'analyse des URL, de leur position sur le serveur.

Mon htaccess doit forcément être dans mon répertoire d'images non ? (je pense que oui sinon ça ne marche pas du tout !)

Alors pourquoi ça marche pô ? Ça n'existe pas un "simulateur" de htaccess où l'on peut entrer des trucs et où il nous ressort sa transformation ?
 
WRInaute discret
Normalement quand tu mets un htaccess dans un répertoire, les règles définies dedans sont valables pour le répertoire et tous les sous répertoires de celui-ci quelque soit le niveau.
Perso, je n'ai pas ce problème, je met tout dans la configuration globale de mon VirtualHost dans Apache ce qui est équivalent en terme fonctionnel à mettre un htaccess à la racine du site.
ça peut peut être t'aider, mon organisation est la suivante :
Code:
/
  index.php
  hotlink.php
  var/
    cache/
      tag_images/
        [mes images retouchées en md5.jpg]
    plain/
      storage/
        [mes images normales à différents niveaux]
 
WRInaute accro
C'est bizarre car chez moi, jusqu'à maintenant j'avais interdit de hotlink quelques serveurs et cela ne fonctionnait que dans le htaccess DANS mon répertoire d'images :?

Je vais poser la question chez mon hébergeur...


Bonne nuit et merci (reprise des débats demain matin !)
 
WRInaute accro
Up

Bonjour tout le monde : je relance le fil... Car mon machin ne fonctionne toujours pas et je commence à déprimer :oops:

À priori ça vient du "repérage" des fichiers JPEG : j'ai essayé ceci, et ça ne fonctionne QUE pour l'image en question ???

Code:
RewriteRule .*\.jpg nom-de-la-photo.jpg

(théoriquement ça devrait remplacer n'importe quelle image par celle indiquée non ?)


EDIT : je vais transférer ma question dans le forum URL Rewriting, je pense que j'aurai plus de réponses là-bas !
 
WRInaute impliqué
Arf j'arrive trop tard c'est vrai que c'est top comme cela.
Sinon pour la liste des robots il y en a une dans crawltrack qui est vraiment bien fournie.
 
WRInaute accro
En fait je me limite à Google Images : c'est le seul moteur qui m'apporte du trafic par les images (les autres : NADA, que dalle... pourtant je suis parfois assez bien placé sur MSN par exemple...)
 
WRInaute impliqué
As tu testé maintenant en surfant comme le robot google ? Je veux dire par là que ça doit être possible de simuler cela en regardant les logs pour reprendre sa signature et en adaptant les headers de Firefox grace à l'extension "User switch agent".
 
WRInaute accro
En fait je n'ai même pas besoin de ça : les logs doivent m'indiquer si le bot "voit" normalement les images ou non ?

(logiquement !)
 
WRInaute impliqué
Oui tu as raison, en tous les cas c'est galère le positionnement sur google pour les images, chez moi ça fait longtemps que je suis plus le passage sur ma galerie et que j'ai baissé les bras.
Quand je fais une recherche sur le nom de mon département "T&G" c'est surprenant les résultats de GG je viens de faire une petite recherche pour voir tes photos de 100glier tu as du mal aussi pourtant tu as fait ce qu'il faut. Je pense en fait que le meilleur ref pour une galerie c'est un blog avec des dossiers à thème.
Désolé d'avoir dérivé un peu du post initial.
 
WRInaute accro
Pour mes photos de 100glier, je suis déjà premier sur "photo 100glier" dans Google (normal), comme une floppée d'autres recherches du genre "photo quelquechose" en fait.

Le hic c'est que de plus en plus de gens passent par le module Images, et que comme il n'est pas souvent mis à jour (et parfois avec des images merdiques reprises sur des sites non moins merdiques), ça énerve :twisted:

J'attends donc impatiemment la prochaine "mise à jour" de l'index de Google Images, car j'ai changé pas mal de petites choses sur mon site depuis peu...
 
WRInaute discret
J'aime bien les petit(e)s rigolot(e)s qui affichent l'url d'une de mes images dans leur script....

ça permet quelques belles rigolades (le remplacement de l'image par une autre... Choisie avec grand soin !)

Le pompon a été atteind avec un site officiel (albanais) qui a mis plus de 48 heures à réagir quand même et je garde précieusement le mail insultant de la petite dame qui affichait une de mes images dans une déclaration d'amour et qui n'a pas du tout apprécié un trait d'humour trivial, très (trop ?) trivial.... C'est vrai que sur ce coup là j'ai un peu forcé...

Les occasions de rire ne sont jamais trop nombreuses ?
 
WRInaute passionné
Il y a le script visohotlink qui te permet de gerer les hotlinks et en particulier de configurer au cas pas cas le hotlinking (image de remplacement, watermark etc)
 
WRInaute impliqué
Merci Suede et hop ajouté dans ma rubrique outils webmaster -http://www.passion-tarn-et-garonne.info/annuaire/outils-webmaster-p1-19.html
 
WRInaute accro
Effectivement, Visohotlink est parfait... pour ceux qui ont une organisation "normale" (pas mon cas : j'ai pas réussi à le faire fonctionner convenablement :? )

Je l'ai plusieurs fois conseillé à des amis photographes :wink:
 
WRInaute accro
Pire que le piratage...pfuittt plus rien chez gg 1mages!

;)
salut Cedric
je me permets un tout petit "hors sujet"...
disparition complète de tous mes visuels chez GG 1mages (depuis environ 3 semaines) et il y en avait plus de 200 sur le site en .fr
Du tri ?...oui ok...mais là c'est directement "poubelle" !
Rien changé à la conception du site (que tu connais...d'autres peut-être)
As-tu une idée à propos de ce phénomène :?:
@+
Fred
 
WRInaute accro
Effectivement, j'ai aussi eu pas mal de pertes et ça bouge énormément en ce moment :roll:

J'espère vraiment que Google 1mages va réindexer rapidos car j'ai fait pas mal de modifs (mon site n'était pas vraiment optimisé en fait)

J'ai toujours quelques images très bien placées tout de même, et par contre mon blog monte en flèche 8O (du coup j'ai "feinté" en plaçant mes dernières images visibles sur toutes les pages du blog !)
 
WRInaute accro
Bien vu pour la feinte ;)
si ça ne t'ennuie pas et plutôt qu'ouvrir un thread sur ces déboires liés à la désindexation des 1mages...j'attends quelques retours d'expériences similaires !
Que fait la police :lol:
@+
Fred
 
WRInaute accro
Pas de problèmes... De toute façon les deux sujets sont intimement liés ("pirates" qui font indexer NOS images, et pertes d'indexation) et je pense - avec quelques jours de recul - que c'est en train de bouger au niveau de Google... En clair, qu'ils font des choses (des essais ?) et que ça bouge !
 
Discussions similaires
Haut