Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

: Jyraphe, votre dépôt en ligne de fichier

Posté par rewind (). Modéré le 17 avril 2008.
La Jyraphe est sorti des steppes dans sa première version publique, la version 0.1.

Jyraphe est une application web de dépôt de fichier, facile à installer et facile à utiliser. Jyraphe est une application complètement libre, distribuée selon les termes de la GNU Affero General Public License, version 3 ou supérieure. Jyraphe est développé selon la philosophie Getting Real, donc possède juste les fonctionnalité nécessaires. La suite de la dépêche vous donnera un aperçu de ces fonctionnalités.

Le but de Jyraphe est de proposer une application web de dépôt de fichier simple que tout le monde puisse installer sur son bout de serveur. Le but est de multiplier les Jyraphe sur l'Internet, à l'inverse de certains sites dont le but est de centraliser le service au maximum, en ajoutant au passage de la publicité qui fait mal aux yeux.

Cette application est un bon remède contre le Minitel 2.0

> Lire la dépêche (71 commentaires, moyenne: 2).  

Vous avez demandé le commentaire #924192.

Upload des fichiers

Posté par mrlag (Jabber id, page perso, ) le 17/04/2008 à 15:35. (lien). Évalué à 3.

Intéressant, mais je n'ai pas vu dans la documentation :

- Comment se fait l'upload des fichiers ?
- Quelles sont les limites de tailles ( limite des applications php/apache sur la commande PUT ? ) ?
- Peut on suivre convenablement l'upload d'un gros fichier ?
- La philosophie «Getting Real» répond t'elle à toutes ces questions ?

--
\_o<
  • [^]Re: Upload des fichiers

    Posté par rewind () le 17/04/2008 à 15:41. (lien). Évalué à 3.

    L'upload se fait par simple HTTP POST, pas de Java/Flash/Machin.

    La taille des fichiers est limité par PHP principalement (c'est dans la documentation : Guide de l'utilisateur > Aide en ligne > taille de fichier maximale).

    Pour suivre un upload, j'ai cherché une solution simple mais je n'en ai pas trouvé (j'ai trouvé un gros bout d'AJAX, un peu trop gros pour ça ou alors un truc qui imposait de patchher PHP (!)). Je suis preneur de toute solution simple.

    La philosophie "Getting Real" permet de se faire des choses simples.

    • [^]Re: Upload des fichiers

      Posté par Bob () le 18/04/2008 à 14:24. (lien). Évalué à 1.

      Ton "truc qui imposait de patcher PHP", ça a quelque chose à voir avec [http://www.haughin.com/2007/10/23/php-upload-progress-with-p(...)] ?

      Si oui, peux-tu expliquer pourquoi tu as préféré passer ton chemin ? Ca n'a pas l'air si compliqué...

      • [^]Re: Upload des fichiers

        Posté par Mathieu Stumpf (Jabber id, page perso, ) le 18/04/2008 à 15:42. (lien). Évalué à 3.

        Parceque tout le monde ne peux pas forcément patcher php sur le serveur qu'il utilise?

        [^]Re: Upload des fichiers

        Posté par rewind () le 18/04/2008 à 16:04. (lien). Évalué à 2.

        Non, ce n'était pas ça. Cette solution n'impose pas de patcher PHP à ce que je vois.

        J'ai préféré passer mon chemin parce que je ne veux pas que ça marche pour moi mais que ça marche pour tout le monde. Et puis une solution qui impose de patcher PHP est forcément une mauvaise solution. Si PHP ne le permet pas naturellement, tant pis. Mais apparemment, avec la page que tu me donnes, on peut le faire sans patch.

        Je vais étudier tout ça et je verrai ensuite ;)

      [^]Re: Upload des fichiers

      Posté par IsNotGood () le 18/04/2008 à 18:34. (lien). Évalué à 3.

      > La taille des fichiers est limité par PHP principalement

      Il serait peut-être cool d'avoir un moyen ajouter à un fichier déjà uploadé.
      Par exemple on en peut uploader qu'au maximum 16 Mo (limite php). Mais j'ai un fichier de 18 Mo.
      - Je le splite en local mon gros fichier (en veillant à conserver l'entension pour le premier fichier afin avoir le bon type).
      - J'uploade le premier fichier => il me donne une url.
      - J'uploade le seconde fichier en indiquant "ajout" et l'url précédente.

      La dernière opération peut être répétée à l'envi.

      • [^]Re: Upload des fichiers

        Posté par IsNotGood () le 18/04/2008 à 18:35. (lien). Évalué à 1.

        En passant, pourquoi Jyraphe ?

        [^]Re: Upload des fichiers

        Posté par IsNotGood () le 18/04/2008 à 18:38. (lien). Évalué à 2.

        > - J'uploade le seconde fichier en indiquant "ajout" et l'url précédente.

        Mieux, après un uploade, j'ai la possibilité d'ajouter.

        [^]Re: Upload des fichiers

        Posté par rewind () le 18/04/2008 à 20:57. (lien). Évalué à 3.

        Je vois la limitation de PHP comme une limitation politique de l'administrateur. Contourner cette limitation, c'est un peu contourner la volonté de l'administrateur. Pour les gens qui l'installent sur leur propre bout de serveur où ils peuvent modifier la conf PHP, ça ne posera pas de problème.

        Sur le "pourquoi Jyraphe ?", c'est écrit dans la FAQ. Parce que girafe s'écrit de mille manières suivant la langue, et c'est une manière de plus.

        • [^]Re: Upload des fichiers

          Posté par IsNotGood () le 18/04/2008 à 21:21. (lien). Évalué à 3.

          > Je vois la limitation de PHP comme une limitation politique de l'administrateur

          Mouaifff...
          Le mieux pour les uploads est d'utiliser rsync ou scp ou ftp etc.
          Si l'administrateur ne fournit pas cette possibilité, dois-je en conclure que l'utilisation de Jyraphe est un contournement de la politique de l'administrateur ?

          Enfin le problème de cette limitation de php, n'est pas que politique. Si tu autorises 1 Go pour POST, il te faut au moins 1 Go de RAM. Images s'il y a 3 (ou plus) malins qui uploadent un fichier en même temps. C'est donc aussi un problème de sécurité (DOS) et pas seulement de politique.

          > Contourner cette limitation, c'est un peu contourner la volonté de l'administrateur.

          La volonté des l'administrateurs va s'exprimer avec les quotas dans ce domaine.
          Si l'administrateur te donne 20 Go, que ça soit 1 fichier de 20 Go ou 2000 fichiers de 10 Mo, il s'en fout.
          Et que je sache, l'admin a autorisé php. Sauf s'il indique spécifiquement qu'il ne faut pas utiliser php afin de créer des fichiers plus gros que la limite (POST) de php, je pense que ton "excuse" est sans réel fondement. Désolé pour la brutalité.

          Si tu ne veux pas le faire, je comprend très bien. Tu veux que Jyraphe soit simple et c'est sa grande qualité.
          Et ne voit pas dans mon commentaire précédent une requête, je n'utilise pas actuellement Jyraphe. Aucune offence, c'est seulement qu'*actuellement* j'en ai pas besoin.
          Donc soit à l'écoute de tes vrais utilisateurs et pas de moi :-)

          Bonne continuation.

          • [^]Re: Upload des fichiers

            Posté par IsNotGood () le 18/04/2008 à 21:26. (lien). Évalué à 2.

            Si l'admin ne veut pas de gros fichier (type vidéo) avec Jyraphe ce n'est pas un problème.
            Il suffit :
            part1 : url...
            part2 : url...

            Pour les faire un rar, split, etc.

            • [^]Re: Upload des fichiers

              Posté par rewind () le 18/04/2008 à 23:03. (lien). Évalué à 2.

              Voici une très bonne technique qui permet de ne pas implémenter une fonction en trop.

              Ça me fait penser à un chapitre de Getting Real où il dit qu'il faut laisser les utilisateurs trouver des utilisations détournées de l'outil. C'est exactement ce que tu viens de faire, Bravo :)

              • [^]Re: Upload des fichiers

                Posté par IsNotGood () le 19/04/2008 à 05:47. (lien). Évalué à 0.

                Et les plus malins seront se passer de Jyraphe sous tes applaudissements.

                • [^]Re: Upload des fichiers

                  Posté par IsNotGood () le 19/04/2008 à 05:55. (lien). Évalué à 2.

                  Désolé pour le commentaire précédent, le commentaire de Marc m'a énervé.

            [^]Re: Upload des fichiers

            Posté par Marc () le 18/04/2008 à 22:25. (lien). Évalué à 1.

            > Enfin le problème de cette limitation de php, n'est pas que politique. Si tu autorises 1 Go pour POST, il te faut au moins 1 Go de RAM.
            > Images s'il y a 3 (ou plus) malins qui uploadent un fichier en même temps. C'est donc aussi un problème de sécurité (DOS) et pas seulement de politique.

            c'est ridicule de dire des choses comme ça. On peut tout de même supposer que les gens qui gèrent php savent ce qu'ils font. Il suffit de gérer un fichier en upload et d'écrire au fil de l'eau pour s'affranchir de cette stupidité d'assertion au sujet de php.

            Pour les plus curieux, positionner le max_upload_size sur 20 ou 30Mo et le memory_limit sur une valeur bien inférieure et tenter de faire marcher jyraphe ou un simple upload. A vos claviers ...

            Jyraphe, tu m'intéresses, j'irai voir ce que tu as dans les tripes dans quelque temps. Rewind, tu me pardonneras pour l'autopsie :-)

            • [^]Re: Upload des fichiers

              Posté par rewind () le 18/04/2008 à 23:00. (lien). Évalué à 2.

              Tu es tout pardonné. Je dirais même que le libre pousse à l'autopsie alors ne t'en prive pas.

              [^]Re: Upload des fichiers

              Posté par IsNotGood () le 19/04/2008 à 05:45. (lien). Évalué à 2.

              > c'est ridicule de dire des choses comme ça. On peut tout de même supposer que les gens qui gèrent php savent ce qu'ils font. Il suffit de gérer un fichier en upload et d'écrire au fil de l'eau pour s'affranchir de cette stupidité d'assertion au sujet de php.

              Ben tu devrais le faire, car php ne sait pas le faire (et depuis des années, depuis toujours).
              Qui est ridicule et stupide ? php ?

              Puisque tu es si doué, il serait ridicule que tu ne le fasses pas.
              Fais le pour php 6, tu vas avoir les ovations de la foule.

              http://php.net/manual/fr/ini.core.php
              post_max_size integer

              Définit la taille maximale des données reçues par la méthode POST. Cette option affecte également les fichiers chargés. Pour charger de gros fichiers, cette valeur doit être plus grande que la valeur de upload_max_filesize. Si la limitation de mémoire est activée par votre script de configuration, memory_limit affectera également les fichiers chargés. De façon générale, memory_limit doit être plus grand que post_max_size. Lorsqu'un entier est utilisé, sa valeur est mesurée en octets. Vous pouvez également utiliser la notation sténographique comme décrit dans cette entrée de la FAQ.. Dans le cas où la taille des données reçues par la méthode POST est plus grande que post_max_size , les superglobales $_POST et $_FILES seront vides. Ceci peut être surveillé de différentes façons, e.g. en passant une variable $_GET au script qui traite les données, i.e. <form action="edit.php?processed=1">, et ainsi vérifier si $_GET['processed'] est défini.


              Me déçoit et devient mon héro.

              • [^]Re: Upload des fichiers

                Posté par Marc () le 19/04/2008 à 08:53. (lien). Évalué à 1.

                merci pour l'info, j'y regarderai de plus près :-) quand a modifier php, heu, je ne crois pas que ce soit dans mes cordes.

                • [^]Re: Upload des fichiers

                  Posté par d-jo (page perso, ) le 19/04/2008 à 22:24. (lien). Évalué à 3.

                  Le problème c'est que la modif de php c'est dans les cordes de personnes.

                  Aucun patch n'est assez bon pour le fameux php. Tous les hébregeurs se traîne des kilomètres de patch qu'ils n'ont jamais pu faire intégrer upstream.

                  Du coups ils traînent la patte pour les changement de versions.

                  Tu veux un exemple :
                  exec -> avoir un execdir sans safe_mode
                  mail -> mail interdire le -f (toujours sans safe-mode), ajouter le nom du script dans les headers
                  fsockopen -> avoir le même comportement que curl (en gros regarder ce que c'est avant de l'ouvrir) histoire de ne pas participer à des ddos
                  Interdire certains php_value, ini_set toujours sans safe-mode

                  Non mais c'est vrai y-a l'openbasedir
                  Bon j'arrête je vais devenir méchant.

                  Toujours est-il que si un client me dit qu'il veut un serveur fiable à l'heure actuelle c'est patch de la fonction mail, safe-mode on et apache en nobody (oui vous savez le truc chiant qui fait que quand la bande à 4t4tu5K uploade en douce un script grâce à ta fabuleuse fonction ils ne peuvent pas l'utiliser).

                [^]Re: Upload des fichiers

                Posté par Marc () le 19/04/2008 à 09:50. (lien). Évalué à 3.

                voici un commentaire sur cette page : http://fr2.php.net/manual/en/features.file-upload.php I don't believe the myth that 'memory_size' should be the size of the uploaded file. The files are definitely not kept in memory... instead uploaded chunks of 1MB each are stored under /var/tmp and later on rebuild under /tmp before moving to the web/user space. I'm running a linux-box with only 64MB RAM, setting the memory_limit to 16MB and uploading files of sizes about 100MB is no problem at all! Nevertheless, some users reported a problem at a few 100MB, but that's not confirmed... ;-)

                • [^]Re: Upload des fichiers

                  Posté par IsNotGood () le 19/04/2008 à 12:31. (lien). Évalué à 2.

                  Des milliers d'excuses.
                  J'avais eu le problème. Mais c'était il y a un bien longtemps (php 4).
                  La doc semblait indiquer que c'était toujours un problème. Mais manifestement ce n'est plus le cas.

      [^]Re: Upload des fichiers

      Posté par desfrenes () le 24/04/2008 à 08:06. (lien). Évalué à 1.

      pourtant avec apc ce n'est pas compliqué : http://www.whenpenguinsattack.com/2006/12/12/how-to-create-a-php-upload-progress-meter/

      L'exemple utilise yui, mais rien n'oblige à l'utiliser.