Partage
  • Partager sur Facebook
  • Partager sur Twitter

Php manager

    4 avril 2006 à 1:20:05

    Pour éviter de pourrir un autre topic je poste ici. Je déteste le hors sujet et donc je ne fais pas aux autres ce que je ne veux pas ce qu'autrui me fasse ;)

    Résumé :

    Citation : Satan2k

    moi je suis en train de finaliser un très gros projet : un gestionnaire de fichier serveur multi utilisateur avec permissions d'accès, url sécurisées, fichiers sécurisés, éditeur texte en ligne, etc..

    Et bien sur les options (en mode graphique bien sur) habituelles, CHMOD, créer dossier, supprimer dossier, copier dossier, renommer dossier, propriétés et tout le toutim :D

    Si y'en a des interessés, je compte bientot passer mon projet en open source et si y'en a encore des plus interessés (test ou aide peut être -> attention projet sérieux, je suis a 80 % du developpement) alors contactez moi via mail (ou msn) boby1024@msn.com

    y'a une version béta qui est plus mise à jour depuis 2 semaines, la nouvelle j'lai pas encore uploadé vu que je travaille à un niveau critique question sécurité et que la moindre erreur et paf plus de ftp :p

    Donc voila l'url de la dernière version "stable" : http://membres.lycos.fr/virtuadm/filemgr

    j'ai un compte prévu pour démonstration

    Login : demo
    Password : demo



    Enfin voila maintenant je peux vous demander votre avis sur la chose (critique constructive étayée par des arguments donc s'il vous plaît pas de : je cite : "c nul ton truc kas toi" (1/ sms 2/ destructif 3/ pas d'argument)

    Et je me verrai dans le plaisir de vous répondre si vous avez des suggestions, des idées, voire des propositions.

    Je suis actuellement à la recherche de co-developpeurs car la timeline prévue pour une version finale est pour Juin et il ne reste plus que quelques fonctions à débugger ainsi que quelques modules à terminer. Si on pouvait terminer ca rapidement ou bien carrément faire plus, ca serait fabuleux :D

    Enfin bon voila, je suis à votre écoute.

    Merci d'avoir accordé un peu de temps pour lire ce thread long et ennuyeux ;)

    Bonne nuit à tous les zéros (et aux pas zéro aussi :p)
    • Partager sur Facebook
    • Partager sur Twitter
      4 avril 2006 à 1:45:16

      J'ai pas tout testé mais je considere que les différentes options fonctionnent sans probleme (upload, delete, edit, etc.. ainsi que la sécurité de l'ensemble). Étant donné que le code n'est pas encore libre, je ne peut critiquer que superficiellement :

      - Il manque le donwload des fichiers non ?

      - Il y a un effort à faire au niveau de l'interaction.. mais c'est peut etre subjectif (j'aime pas les popups, je preferais un design extensible avec toutes les données visibles (plus agréable que de devoir cliquer dix fois pour vérifier les droits/taille). À la rigueur, ce qui peut etre sympa, c'est d'afficher toutes les infos + offrir la possibilité d'ouvrir un popup (pour comparer deux fichiers qui ne sont pas dans le meme dossier).

      - Je me rabat sur le design maintenant (donc mes remarques sont tout autant subjective) : j'aime pas :p . Les icones sont trop grosses, les couleurs pas terribles et les boutons médiocres. De plus, tu devrais différencier le parent directory des autres. Le header est aussi trop grand à mon goût.. Lors du survol d'une case, elle change de couleur (c'est bien, mais ca devrait changer la couleur de toute la ligne :) ).
      Je sais que c'est secondaire au codage, mais si tu envisages de le publier, je considere qu'il faut l'améliorer pour attirer les utilisateurs (à moins qu'il soit possible de changer les templates bien sur :) ).

      Publies les sources, je serais plus objectif.
      • Partager sur Facebook
      • Partager sur Twitter
        4 avril 2006 à 2:06:08

        Au niveau des templates c'est sans doute possible, même a la base prévu mais faute de temps je considère ce module comme secondaire. C'est prévu dans la todolist de faire un style plus windowsien, plus sobre mais sans doute ce ne sera pas inclu dans la version 1.0.

        L'upload est pas encore implémenté car justement je suis occupé à bosser sécurité à ce niveau la (pour empecher l'envoi de backdoor par exemple ;) )

        Sinon a la base un volet sur le coté droit est prévu et il permettra au membre d'accèder à ses options ou ses informations. (et aux admins d'avoir un menu bien sur)

        Pour le parent directory, j'en prend note. Sinon concernant la ligne ce n'est pas trop possible car j'ai appliqué la propriété css a la cellule et le css ne laisse pas beaucoup de choix : Ou tout ton tableau change de couleur, ou une seule cellule change de couleur.

        Concernant la taille des icones et le classement par d'autres critères est prévu pour les versions ultérieures mais j'essaie déjà de terminer le noyeau et la sécurité en premier lieu. Apres les updates iront à la volée à ce niveau la.

        Mes sources sont bien structurées mais encore trop bordèliques et trop bugguées pour que j'ose les publier pour le moment :D C'est en grand chantier la dedans et ca sert à rien que je publie une source ce soir alors que demain un des piliers sera changé. D'autant plus qu'a ce moment la je devrais suivre un rythme (envoyer les fichier modifiés, etc.) que je ne peux pas me permettre de suivre pour le moment.

        Mais a la première release je compte bien sûr publier tout en open. (faut aussi que je fasse de la doc. Pour mémoire la derniere sortie du code m'a pris une cinquantaine de pages. Sans documentation, c'est pas sérieux, j'mapelle pas microsoft moi)

        Je n'ai pas encore fait la centrale de download non plus donc pour l'instant on se contente qu'en cliquant sur les liens, on obtient le fichier (pas de bol que t'ai pu voir qu'une image ou qu'un fichier texte, j'ai noté encore une idiotie de ma part grace a toi, merci :D)

        Mais une centrale de download sera prévue pour sécuriser l'accès aux fichiers.

        Enfin un tout grand merci pour cet avis, j'en prend bien note.

        P.S. : je met quelques fichiers avec extension différentes en plus pour que tu puisse voir
        • Partager sur Facebook
        • Partager sur Twitter
          4 avril 2006 à 2:46:21

          Pour que je puisse "critiquer", il me faudrait plus d'informations.

          -Les CHMods sont gérés de quelle manière. Sont-ce ceux du système de fichier ou sont ils indépendant (virtuels), et géré par PHP uniquement (Donc ca marcherait avec Windows)

          -Tu gère les droits de quelle manière? Y'a t'il utilisation d'une BDD? De fichiers de config? Fichier .php ou .ini? .htaccess?

          -Le système de fichier est réel (donc l'arborescence est exactement ce qui est listé par PHP) ou virtuel (PHP gère les fichiers/dossiers à sa manière, avec un index pour l'arborescence?) ou un juste mélange des deux?

          -Par quoi sont gérés les utilisateurs? BDD? fichiers? Gestion des 'sessions' de connexion?

          -Ca a la vocation d'être un explorateur?

          -Tu veux utiliser des templates?

          -Le code sera libre?
          • Partager sur Facebook
          • Partager sur Twitter
            4 avril 2006 à 3:58:51

            Citation : Pas de titre

            -Les CHMods sont gérés de quelle manière. Sont-ce ceux du système de fichier ou sont ils indépendant (virtuels), et géré par PHP uniquement (Donc ca marcherait avec Windows)

            Les chmods sont gérés par l'apache et PHP. D'après ce que j'ai vu ca fonctionne avec windows mais je suis pas encore totalement sur. Presque tout mon travail repose sur PHP donc je réinvente pas le fil a couper le beurre. Le chmod existait déja je l'ai réutilisé mais en ajoutant bien sur toutes les fonctions permettant de sécuriser au maximum l'intègrité du serveur et des fichiers des autres utilisateurs

            Citation : Pas de titre

            -Tu gère les droits de quelle manière? Y'a t'il utilisation d'une BDD? De fichiers de config? Fichier .php ou .ini? .htaccess?


            Rassure toi, normalement en fin de compte quand j'aurai tout débuggé, il suffira d'installer le script sur la machine, d'éditer le fichier de config et de lancer la page install.php. Tout sera ensuite intuitif au maximum. Ensuite concernant les dossiers c'est à l'intérieur du script que j'ai transcrit certaines règles pour empecher par exemple un utilisateur d'un dossier de modifier les dossiers d'autres utilisateurs sur le serveur.

            Citation : Pas de titre

            -Le système de fichier est réel (donc l'arborescence est exactement ce qui est listé par PHP) ou virtuel (PHP gère les fichiers/dossiers à sa manière, avec un index pour l'arborescence?) ou un juste mélange des deux?



            On va dire que c'est un mélange des deux car je traite les données brute (listing du répertoire) et j'assigne ensuite un certain type de procédure en rapport le type de fichier concerné lui même identifié suivant son type, son extension, ... .

            Citation : Pas de titre

            -Par quoi sont gérés les utilisateurs? BDD? fichiers? Gestion des 'sessions' de connexion?



            Le script utilise actuellement une banque de donnée de type mysql avec les données utilisateur et le dossier assigné à chaque utilisateurs

            Citation : Pas de titre

            -Ca a la vocation d'être un explorateur?


            A la base j'avais prévu de faire un explorateur simple, mais en intègrant la gestion multi-utilisateur, je suis parti d'un autre point de vue où, par exemple, un espace web peut partager des fichiers à des membres pour les échanges simples sur internet. Par exemple un site composé de plusieurs membres doit donner l'accès au ftp pour uploader des fichiers ce qui peut être gênant. Via mon optique, le serveur web serait un disque dur que l'on peut partager, limiter entre utilisateurs avec sécurité et restrictions bien sur. Cela peut être quelque chose aussi de plus convivial qu'un programme FTP et ou il n'est pas nécessaire de télécharger un programme pour envoyer un fichier sur ce serveur.

            On peut bien sur rêver d'accèder à un futur explorateur de fichiers web totalement gratuit mais bon sans soutient pour l'instant ca tient surtout du home made ;)

            J'essaie de faire le plus propre et le plus professionnel que je peux pour laisser les futures personnes interessées accèder au code que je livrerai en Open source.

            Citation : Pas de titre

            -Tu veux utiliser des templates?



            Je voudrais utiliser des templates mais au niveau timing je suis trop serré pour m'en occuper du moins pour la timeline de la première version. Donc oui je veux utiliser des templates, mais en tout cas pas maintenant.

            Citation : Pas de titre

            -Le code sera libre?



            Je compte laisser le code libre dans son entièreté sauf pour la partie encryption. Je donnerai toute la doc explicative avec déja une encryption de base, un exemple quoi mais je compte encrypter la source du fichier d'encryption afin que n'importe qui installe ce prog sur son ftp n'aie pas sa sécurité diminuée du fait que tout le monde peut encrypter / décrypter toutes les données (quelqu'un de malintentionné pourrait juste utiliser les fonctions pour passer l'encryptage et ensuite essayer de trouver une faille car je ne me base pas que sur ca comme sécurité ;)) . Normalement j'ai entendu que c'était possible d'encrypter la source de fichiers .php avec certains programmes sans pour autant empecher la bonne execution du dit script.

            Sinon pour tout le reste, tout le code sera fourni avec une documentation.
            • Partager sur Facebook
            • Partager sur Twitter
              4 avril 2006 à 4:23:59

              Hum, pour les chmods, vu qu'ils n'existent pas sous windows, et que PHP (avec le fonction CHMod par exempe) utilise directement les chmods style UNIX (serveur linux en général), je ne pense pas que ca fonctionne sur windows (qui de plus n'a pas de gestion de groupes/onwers). Tu devrais donc toujours obtenir un chmod 777 sur windows :)

              Pour les droits, je me rend compte que ma question n'était pas bien posée. Je me doute bien que tu fera un joli truc d'install, c'est que je ferais aussi. Mais je crois que le meilleur moyen serait de gérer les droits des différents utilisateurs grâce à des fichiers (plus rapides, moins lourd qu'une BDD)

              J'avais fait un mini-explorateur (avec juste la navigation dans les dossiers): http://www.dhkold.be/ qui fonctionne avec des templates. J'en ai aussi une nouvelle version, mais je ne l'ai pas beaucoup avancée.

              Bonne chance pour la suite
              • Partager sur Facebook
              • Partager sur Twitter
                4 avril 2006 à 4:33:00

                ben tu va rigoler quand j'ai fait l'andouille avec mon CHMOD hier avec le dossier de mon server web (sous windobe -> machine de test) ben l'apache, php, tout était parti en zizou :D

                Bizzare bizzare par contre apres avoir décoché le "lecture seule" et accepté "tous les dossiers et sous dossier" la tout remarchais :D

                Sinon merci de tes encouragements. Si jamais vous voulez poser une pierre à l'édifice ou bien même donner une suggestion, n'hésitez pas, j'ai l'esprit très ouvert ;)

                Par contre je m'emparerais bien de ton bout de script qui nettoye ton $_GET (dossier) des "/../" . Ma regex marche mais elle boîte un peu :D
                • Partager sur Facebook
                • Partager sur Twitter
                  4 avril 2006 à 18:51:09

                  Pour les curieux, j'ai mis à jour la fonction icone mimetype mais bon c'est encore en béta la :D

                  Du coup y'a des bugs qui se présentent lors de la propriété des images. Vous en faites pas, je règle cela ;)
                  • Partager sur Facebook
                  • Partager sur Twitter
                    6 avril 2006 à 1:21:52

                    Voila en up une nouvelle béta. J'ai pris quelques idées au niveau graphisme et j'ai amélioré le script en grosses lignes, je m'occupe maintenant de la gestion des fichier cache qui m'a l'air foireuse :D

                    Votre avis? :D (j'vais remettre des fichiers car il y a eu un bug ou bien quelqu'un a passé ma sécurité)

                    EDIT : c'est moi qui avait donné la permission de destruction des fichiers et y'a un llamma qui est passé par la :p
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Php manager

                    × 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