Remplacer les liens directs sur les images par une autre image

cs_Chris31000 Messages postés 36 Date d'inscription lundi 29 mars 2010 Statut Membre Dernière intervention 5 novembre 2011 - 21 avril 2010 à 16:24
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 - 30 avril 2010 à 09:55
Bonjour,

Je me permet de vous solliciter parce que malgré mes nombreuses recherches sur le net je ne trouve aucune solution à mon problème et comme je suis vraiment nulle en programmation je suis incapable de le faire moi même.
Je suis dans une impasse.

Je souhaiterais empêcher les internautes de faire des liens directs sur mes images (par liens directs, j'entends copier/coller leurs url pour les afficher sur divers forums) mais sans les empêcher de les prendre (enregistrer sous ...)
J'ai mis en place des messages sur mon site, même en clic droit pour les avertir de les enregistrer sous mais rien à faire, je retrouve sans arrêt des liens directs ailleurs que sur mon site.
Je passe mon temps à renommer les dites images ou, lorsqu'il y en a trop, à renommer les dossiers sur le serveurs parce que du coup mes pages sont longues à charger.
Ça devient lassant.

Le problème c'est que mon site est hébergé chez free (bah oui!) et que celui ci a désactivé le mod_rewrite.
Aussi j'en appelle à vos connaissances pour savoir s'il y existe une solution alternative en php, sans avoir à modifier toutes mes pages, à ce code du fichier htaccess:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mon-site.fr(/)?.*$ [NC]
RewriteRule .*\.(gif|jpg|jpeg|bmp)$ http://Mon-image-de-remplacement.gif [R,NC]


C'est tout à fait ce que je recherche mais je ne peux pas l'utiliser en htaccess. :(
Cependant, si c'est faisable, est ce qu'il y a possibilité que ce fichier php puisse être placé uniquement dans les dossiers des images interdites de liens directs?

En espérant que vous pourrez m'aider, je vous remercie d'avance pour vos réponses.

24 réponses

cs_Chris31000 Messages postés 36 Date d'inscription lundi 29 mars 2010 Statut Membre Dernière intervention 5 novembre 2011
29 avril 2010 à 19:43
Plus personne?
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
29 avril 2010 à 21:21
Je comprends bien ce que tu me dis et je respecte ton opinion, cependant ça ne résout pas vraiment mon problème.


Que dois je faire?
Comment résoudre mon problème?

Il y a eu au moins 5 solutions proposées et argumentées, et TychoBrahe t'a même écrit un code dans sa grande générosité, que veux tu que l'on fasse de plus ?
Que l'on fasse le boulot à ta place ?

n'apparait pas correct du point de vue de TychoBrahe et, après l'avoir testé sur plusieurs de mes pages semble faire ramer le chargement de mes images

J'y ai jeté un oeil rapide, il n'est pas si incorrect que ça, et je ne vois pas trop ce qui pourrait faire ramer le chargement (enfin, faut savoir ce que tu entends par "ramer") Tu n'as pas activé l'envoi du mail des fois ?

"Service d'envoi de fichiers http://dl.free.fr
Stockage détécté sur les pages personnelles"

Pour le coup du es peut être victime du HTTP-REFERER que je conseillais de ne pas utiliser parce que si le bot de Free, destiné à contrôler les pages Free, n'envoie pas le HTTP-REFERER, il se retrouve constamment avec un header(404), et ça il n'aime pas du tout. A lire certains post sur le sujet ça ne parait pas impossible

et je ne connais pas plus le JS pour mettre en place, comme tu me le conseille

Je n'ai jamais conseillé l'utilisation du JS, j'ai juste précisé que ça pouvait être une solution.
Ce que j'ai conseillé dans les possibilités que j'exposais, c'est de travailler sur l'IP : c'est la solution la plus simple à mettre en place et c'est également la plus efficace.
J'imagine que tu n'as pas 10000 visiteurs par jour, non ? Au pire combien d'adresses IP devrais tu bannir ? 50 ? 100 ? 1000 ? Dans tous ces cas j'opterai pour cette solution.




Kohntark -
0
cs_Chris31000 Messages postés 36 Date d'inscription lundi 29 mars 2010 Statut Membre Dernière intervention 5 novembre 2011
30 avril 2010 à 09:30
TychoBrahe t'a même écrit un code dans sa grande générosité

Et je l'en remercie grandement.
Par contre, ça ne fonctionne pas, j'ai un message d'erreur:
Fatal error: Call to undefined function: finfo_open() in /mnt/108/sdb/1/2/image.php on line 10

que veux tu que l'on fasse de plus ?

Si je savais trouver une solution je ne serais pas là.

je ne vois pas trop ce qui pourrait faire ramer le chargement (enfin, faut savoir ce que tu entends par "ramer")

Mes images se chargeaient très bien alors qu'avec le script il faut actualiser plusieurs fois la page pour les voir et encore, elles ne se chargent pas toutes (alors qu'en clic droit=> "afficher l'image" elles sont bien présentes)

Tu n'as pas activé l'envoi du mail des fois ?

Ça poserait un problème?

Pour le coup du es peut être victime du HTTP-REFERER que je conseillais de ne pas utiliser parce que si le bot de Free, destiné à contrôler les pages Free, n'envoie pas le HTTP-REFERER, il se retrouve constamment avec un header(404), et ça il n'aime pas du tout. A lire certains post sur le sujet ça ne parait pas impossible

Qu'est ce que je risque si ça vient bien de chez eux?
A trop recharger mes pages j'ai également ce message de temps en temps:
[i]Nous avons détécté que votre adresse IP ouvrait trop de connexions vers notre serveur web.
Nous vous rappelons que ces pratiques sont strictement inutile et n'ont pour unique conséquence de ralentir les serveurs. /i

Ceci dit, merci quand même pour tes réponses Kohntark
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
30 avril 2010 à 09:55
Fatal error: Call to undefined function: finfo_open() in /mnt/108/sdb/1/2/image.php on line 10


Et bien tu lis l'erreur, si besoin en utilisant un traducteur :
Erreur Fatale : appel d'une fonction indéfinie : finfo_open() dans le fichier ...

Tu as le réflex de consulter la doc et tu constates que cette fonction n'est disponible qu'à partir de PHP 5.3.0, d'où la question :
Quelle est ma version de PHP ? Est elle supérieure ou égale à 5.3.0 ?

... il y a fort à parier que non.


Si je savais trouver une solution je ne serais pas là.

Je le conçois bien, mais, maintenant que 5 solutions t'ont été proposées je commence à ne plus comprendre ...
Sans compter que je n'ai vu nulle part une remarque / question de ta part sur la solution que je mettais en avant.

Ça poserait un problème?

Oui, il est évident que si tu envoies un mail pour chaque image ça va ralentir sensiblement (si le HTTP-REFERER n'est pas envoyé)

Qu'est ce que je risque si ça vient bien de chez eux?

D'après mes quelques lectures d'hier => destruction du site sans autre préavis.
A ta place je m'assurerai que les sauvegardes sont à jour.



Kohntark -
0
Rejoignez-nous