JeuWeb - Crée ton jeu par navigateur
Player Flash, mp4 et hotlinking - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Player Flash, mp4 et hotlinking (/showthread.php?tid=4559)



Player Flash, mp4 et hotlinking - Allwise - 28-01-2010

Salut,

En ce moment je sèche sur un problème, peut-être pourriez-vous m'aider.
Le contexte : J'ai une page avec un jwplayer, qui charge un fichier mp4 sur mes serveurs, en "progressive download" ( par opposition au "vrai" streaming ), servi par lighttpd.
Mon problème : des webmasters peu scrupuleux récupèrent le lien de mon fichier et le mettent directement sur leur site. Je veux empêcher cette pratique qui met un peu plus mes serveurs par terre.

Je ne peux rien faire avec le referrer, le navigateur n'envoie pas le referrer pour les requêtes initiées par le player flash. Firefox en tout cas, ne le fait pas.
J'ai tenté de passer par un fichier php, lequel servait le fichier seulement si le bonhomme était passé sur mon site dans un laps de temps court, et ça marchait bien. Le problème c'est que le thread php était actif durant tout le téléchargement du fichier de l'internaute ( fichier de 100 Mo ), et que ça mettait mon serveur à plat avec très peu de connectés.

Une idée pour empêcher le hotlinking ?


RE: Player Flash, mp4 et hotlinking - NicoMSEvent - 28-01-2010

tout ce que j'ai pu trouver passe par le .htaccess avec RewriteCond et RewriteRule... donc, besoin du REFERER.

exemple :
Code :
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mon-site.com/.*$ [NC]
RewriteRule \.(gif|jpg|png|mp4|avi|mpg|wmv|mp3|ogg)$ http://www.autre-site.com/hotlinking.jpg [R,L]

et ceux qui n'ont pas de REFERER, ils n'ont qu'a changer leurs parametres, ou de browser ^^


RE: Player Flash, mp4 et hotlinking - Allwise - 28-01-2010

C'est sympa de proposer ton aide mais je me répète,
1° Je n'ai pas le referer. A moins qu'il existe un moyen de forcer son envoi par le navigateur ( et ce sans que les internautes aient à changer / trafiquer leur navigateur ), je peux pas l'utiliser.
2° Je suis sous lightty et je n'ai donc pas de htaccess. Car si je tournais sous apache, au pire j'aurais fait le gitan et j'aurais généré un .htaccess dynamique contenant les ips autorisées et se regénérant continuellement. Mais avec lightty, toute la config se fait en statique dans le fichier de conf et les changements exigent un redémarrage du serveur. Je ne sers pas le fichier via Apache car ça monopolise le serveur et pénalise tous les sites qui tournent dessus.
3° Mon but c'est de trouver une solution pour mes internautes, pas de contourner le problème pour qu'au final plus personne puisse voir la vidéo.

Ceci dit, merci d'avoir essayé Wink


RE: Player Flash, mp4 et hotlinking - NicoMSEvent - 28-01-2010

ok, je cerne un peu mieux ton besoin ;-)

Pourquoi pas faire quelque chose du genre :

1° dans ton script, tu crée un "hard link" vers ta vidéo, avec un chemin "random" (ex : /home/mon_user/www/video/123456789/ma_video.mp4 ), et tu fais pointer le lien "a href" vers ce "hard link"

2° tu supprimes ce "hard link" après 1h (par exemple, par tache cron, avec la liste des liens obsolete?)

ça n'occupe pas de thread php, n'utilise pas de referer, et pas d'espace disque (enfin, max 1 block par link, et tout dépends de la taille d'un de tes clusters ^^)


RE: [Résolu] Player Flash, mp4 et hotlinking - Allwise - 30-01-2010

Bon ben j'ai résolu mon problème, en fait il existe un module très sympa pour lighttpd : secdownloads. Il permet de gérer des liens dont la validité est limitée dans le temps. Vous générez le lien avec votre langage favoris et lorsqu'un internaute ouvre ce lien, lightty vérifie si le lien est valide avant de servir la ressource. La durée de la validitée du lien est paramétrable : 1 seconde, 10 sec, 60 sec, etc...
Ce qui est dingue c'est que toutes les recherches que j'avais faites sur le sujet ne m'ont jamais mené à ce module. Je suis tombé dessus par hasard, en regardant le conf de lightty et en me disant "tiens, c'est quoi ce module ?".

Donc voilà, résolu, merci NicoMSEvent d'avoir fait vivre ce topic ^^


RE: [Résolu] Player Flash, mp4 et hotlinking - NicoMSEvent - 30-01-2010

au moins j'ai essayé ^^