Partage
  • Partager sur Facebook
  • Partager sur Twitter

NGINX - LEECH

    14 septembre 2013 à 22:26:19

    Bonjours tout le monde !

    J'ai un site qui propose le téléchargement de petit fichier (un ne peut plus légal pour les futurs rétissants^^) et mon problème est assez facile (fin a comprendre à résoudre..  :/) c'est que j'aimerais que le téléchargement de ces fichiers ne soit possible que par mon site (éviter le leech quoi, que monsieurs X poste xxx.fr/monfichier.gif sur le site yyy.fr et que ceux du site yyy.fr puisse télécharger ce fichier) je sais que c'est possible sur apache (me semble avoir lu des trucs comme sa) mais sur nginx.. je trouve pas ..

    MERCI d'avance et bises à tous et à toutes !

    • Partager sur Facebook
    • Partager sur Twitter
      16 septembre 2013 à 4:39:52

      Dans ton fichier de conf nginx.conf, à la partie server{} ajouter

      location ~* \.(gif)$ {
       valid_referers none blocked www.tondomaine.tld *.tondomaine.tld
       if ($invalid_referer) { return 403; }
      }

      Ainsi les fichiers .gif retourneront une erreur 403 s'il ne sont pas appelés de ta machine.

      Tu peux ajouter des extensions

      location ~* \.(jpg|png|gif|tar|avi)$ {

      Finir par un

      /etc/init.d/nginx reload

       ou 

      service nginx reload

      pour prendre les modifs en compte.

      -
      Edité par Vereesa 16 septembre 2013 à 4:53:55

      • Partager sur Facebook
      • Partager sur Twitter
        16 septembre 2013 à 17:40:44

        Salut, merci pour ton message, j'utilise actuellement le service gratuit de CDN Cloudflare, tu ne penses pas que ça va posser de problème?
        • Partager sur Facebook
        • Partager sur Twitter
          16 septembre 2013 à 21:13:18

          Si, c'est fort probable. Mais CloudFlare permet d'empêcher le hotlinking (mais uniquement pour les images de mémoire). Tout ce qui n'est pas déclaré en A dans ta config CF se fera jeter.

          Deux autres solutions : se contenter du cache nginx, qui n'est pas mauvais soit dit en passant, et/ou d'un cache varnish (m'enfin l'utilité de varnish avec nginx est discutable). Mais si tu as pas mal de traffic et que ton serveur est déjà bien utilisé, ça risque de le mettre à genoux si la configuration n'est pas faite aux petits oignons.

          Deuxième solution : autoriser le/les referer de CloudFlare dans la configuration donnée précédemment.

          -
          Edité par Vereesa 16 septembre 2013 à 21:40:37

          • Partager sur Facebook
          • Partager sur Twitter

          NGINX - LEECH

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown