Joomladay francophone 2018 à Paris 18 et 19 mai

Pour un connaisseur du php, du chmod et des droits...

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Pour un connaisseur du php, du chmod et des droits...

    Voici un petit problème rencontré avec un nouveau site que je réalise...
    Mon hébergeur infomaniak.ch travaille avec linux...

    Quand j'installe joomla tout se passe bien mais ensuite les petits soucis commencent. Chaque fois que j'installer un module un composant ou un template ou quoi que ce soit par l'admin en backend, le serveur s'approprie les fichiers donc je ne suis plus le propriétaire. Ce qui fait que je ne peut pas chmoder ou efface un fichier vu qu'il ne m'apartient pas...

    Pour résoudre ce problème je dois faire un fichier php qui modifie les droits. Voici ce fichier :
    Code:
    <?php   function rchmod($parent, $dmod, $fmod) {         if (is_dir($parent)) {                 $old = umask(0000);                 chmod($parent, $dmod);                 umask($old);                 if ($handle = opendir($parent)) {                         while (($file = readdir($handle)) !== false) {                           if ($file === "." or $file === "..") {                                         continue;                                 } elseif (is_dir($parent . '/' . $file)) {                     rchmod($parent . '/' . $file, $dmod, $fmod);                                 } else {                                         $old = umask(0000);                                         chmod($parent . '/' . $file, $fmod);                                     umask($old);                                 }                         }                         closedir($handle);            }         } else {                 $old = umask(0000);                 chmod($parent, $fmod);                 umask($old);         }    }    rchmod('mon dossier à changer/', 0777, 0666);?>
    Et ça marche bien.
    Mais existe-t-il pas une solution pour intégrer ça à mon joomla pour que ces fameux droits soient les bons dès que j'installe un module ? ça m'éviterai de devoir éditer ce fichier pour chaque dossier intaller par la suite...
    Je vous remercie et vous invite à faire un tour sur creationphoto.ch

  • #2
    Y'a-t-il quelqu'un pour m'aider ?
    Je vous remercie et vous invite à faire un tour sur creationphoto.ch

    Commentaire


    • #3
      Pas de soluce mais j'ai la même galère (et nous sommes quelques uns...).
      Please, une bonne ame (car pour moi tu es le premier à avoir un début de soluce à cet épineux problème)
      ETRE VIVANT
      www.petiteagora.net

      Commentaire


      • #4
        Première question ?

        Tu as fait une demande chez t'on hébergeur pour ce problème ?
        Ne pas faire demain ce que tu peux faire aujourd'hui !!!
        www.imars.fr

        Webdesigner - Graphiste - Développeur

        Commentaire


        • #5
          bien sur que j'ai fait une demande ! et le code que j'ai inséré dans le 1er post m'a été fournipar lui d'ailleur... Il marche très bien

          Le truc c'est que si il existe une solution (et il en existe une c'est sur pour un connaisseur haut de gamme joomla) il faudrait que ce code s'automatise à l'installation de joomla afin de pas avoir ce petit soucis !

          Je suis sur que je ne suis pas le seul à avoir ce problème...
          Je vous remercie et vous invite à faire un tour sur creationphoto.ch

          Commentaire


          • #6
            Salut,

            Ton problème est le même pour tous sous Linux. Il s'agit effectivement de la façon dont sont traités les droits sous Linux, toutes distrib confondues : le UMASK du serveur (guid/suid : propriété des fichiers par Groupe & Utilisateur et les droits qui en découlent). En simplifiant...

            On a les droits FTP au départ, c'est pour cela que l'on est obligé de faire les chmod 777 sur les répertoires qui pourront être modifiables par Joomla par la suite. Sinon, un simple 755 plus secure suffirait...
            Ensuite, lorsque l'admin Joomla (PHP/Apache) prend la main pour installer un composant par exemple, répertoire & fichiers du nouveau composant héritent des droits du serveur web (Apache). Selon les distribs, c'est "www" ou "apache" ou autre. Mais en venant avec tes droits FTP, tu ne peux plus rien faire...

            Partant de là, il faut faire un choix.
            - Soit tu modifies le UMASK de ton serveur pour les adapter à ton compte FTP (et je doute que ton hébergeur soit vraiment chaud bouillant pour ça ! Je me demande même si c'est faisable en mutualisé)
            - Soit tu installes Xplorer et tu fais tout de là
            - Soit, si tu as ton propre dédié (ce qui est 1000 fois plus simple mais pas cadeau ), tu utilises WinSCP (SSH bien plus sécurisé que le FTP), tu es en "root", tu as tous les droits... Y compris donc de créer tes routines (Pourquoi pas ta routine décrite en CRON ?? Ou les macros de WinSCP) sachant que cela n'est plus nécessaire puisque tu as la main partout...

            Maintenant, chaque distrib se comporte différemment d'une autre alors, si je dis une bêtise, si un sys admin passe par là, qu'il me corrige

            @++
            Hyperion
            Pas de demande de support en MP ou par mail, le forum est là pour ça!
            http://network.wantoo.com : Wantoo Network - Infogérance Serveurs Dédiés - Sécurité Joomla!

            Commentaire


            • #7
              Mais sous J!1.0.x, il y avait la possibilité de modifier les droits CHMOD dans la configuration, ce qui évitait tous ces trucs, pourquoi ça n'a pas été repris, ce serait quand même plus simple...
              ETRE VIVANT
              www.petiteagora.net

              Commentaire


              • #8
                propriété /groupe

                Peut être que la solution ce trouve sur http://forum.joomla.fr/showthread.ph...449#post291449
                proposé par Malok !

                si quelqu'un(expert php) pouvez examiner le code ..

                merci
                bonne soirée

                (élevé au Basic et Pascal, je patoge dans la Java du web)

                Commentaire


                • #9
                  Envoyé par hyperion Voir le message
                  Salut,

                  Maintenant, chaque distrib se comporte différemment d'une autre alors, si je dis une bêtise, si un sys admin passe par là, qu'il me corrige

                  Hyperion
                  Effectivement, d'une distribution à l'autre il y des différences. A mon avis, la meilleur distribution pour hébeger un site est SME Server. J'ai trois serveurs qui roule sur SME !! C'est un bijou !!

                  Si cela intéresse des utilisateurs de Joomla qui souhaterait héberger eux-même leur site, je serais prêt à offrir le support nécessaire via un site et un forum dédié à l'installation de Joomla sur SME Server.

                  Je vais toutefois attendre vos réactions avant d'insvestir du temps dans ce projet car cela demande beaucoup d'effort et de temps.

                  Avec ce que je pourrais préparé, en moin de deux heures vous pourrez installer SME, le configurer, installer Joomla et les drois d'accès requis.

                  Avec SME, vous pouvez même héberger plusieurs sites avec des noms de domaine différents.

                  J'attends vos commentaires...
                  Technicien Informatique, Chroniqueur Technologique et Dévellopeur Web.

                  Commentaire


                  • #10
                    Envoyé par feeny Voir le message
                    ...A mon avis, la meilleur distribution pour hébeger un site est SME Server. J'ai trois serveurs qui roule sur SME !! C'est un bijou !!
                    Salut Feeny,

                    Tu as parfaitement raison... rien de mieux qu'une SME, mais pour des besoins spécifiques (local, VPN 1to1 ou 1toX, Samba, Mails...etc) car il est dificile de servir des sites sur le réseau Internet avec nos pauvres débits montants de nos ADSL standards

                    Une SME v7 est basée sur CentOS mais elle est encore plus particulière qu'une autre distrib car basée sur des "Ibays" et des templates de réglages (en gros, si tu modifies les réglages du php.ini d'origine sans passer par les templates, au prochain redémarrage serveur, ces réglages seront perdus)... un peu à la façon d'une Plesk prenant contrôle d'une Fedora (et son vhost.conf) !!

                    @++
                    Hyperion

                    PS : tu es nouveau sur le forum et je vois avec grand plaisir que la SME a fait son chemin La SME sur ce forum, c'est une longue histoire ! Tu n'as pas du lire mon vieux papier sur la SME (6.01 à l'époque) : http://aide.joomla.fr/component/opti...,18/Itemid,48/

                    Si tu veux reprendre le flambeau pour l'adapter à la 7.3, ce sera avec grand plaisir
                    Pas de demande de support en MP ou par mail, le forum est là pour ça!
                    http://network.wantoo.com : Wantoo Network - Infogérance Serveurs Dédiés - Sécurité Joomla!

                    Commentaire


                    • #11
                      Envoyé par hyperion Voir le message
                      Salut Feeny,

                      Si tu veux reprendre le flambeau pour l'adapter à la 7.3, ce sera avec grand plaisir
                      C'est un projet intéressant qui m'intéresse et qui serait possible au cours des prochains mois.

                      Je dois dire que je ne connais pas vos FAI puisque je suis au Québec (Canada) et nos débits ne sont pas terrible non plus.


                      A+
                      Technicien Informatique, Chroniqueur Technologique et Dévellopeur Web.

                      Commentaire


                      • #12
                        Envoyé par o.felli Voir le message
                        Voici un petit problème rencontré avec un nouveau site que je réalise...
                        Mon hébergeur infomaniak.ch travaille avec linux...

                        Quand j'installe joomla tout se passe bien mais ensuite les petits soucis commencent. Chaque fois que j'installer un module un composant ou un template ou quoi que ce soit par l'admin en backend, le serveur s'approprie les fichiers donc je ne suis plus le propriétaire. Ce qui fait que je ne peut pas chmoder ou efface un fichier vu qu'il ne m'apartient pas...

                        Pour résoudre ce problème je dois faire un fichier php qui modifie les droits. Voici ce fichier :
                        Code:
                        <?php   function rchmod($parent, $dmod, $fmod) {         if (is_dir($parent)) {                 $old = umask(0000);                 chmod($parent, $dmod);                 umask($old);                 if ($handle = opendir($parent)) {                         while (($file = readdir($handle)) !== false) {                           if ($file === "." or $file === "..") {                                         continue;                                 } elseif (is_dir($parent . '/' . $file)) {                     rchmod($parent . '/' . $file, $dmod, $fmod);                                 } else {                                         $old = umask(0000);                                         chmod($parent . '/' . $file, $fmod);                                     umask($old);                                 }                         }                         closedir($handle);            }         } else {                 $old = umask(0000);                 chmod($parent, $fmod);                 umask($old);         }    }    rchmod('mon dossier à changer/', 0777, 0666);?>
                        Et ça marche bien.
                        Mais existe-t-il pas une solution pour intégrer ça à mon joomla pour que ces fameux droits soient les bons dès que j'installe un module ? ça m'éviterai de devoir éditer ce fichier pour chaque dossier intaller par la suite...
                        Salut O.Felli,

                        je ne suis pas un pro en PHP aussi je souhaite avoir quelques renseignements suplémentaires.
                        1 - Je copie et je colle ton code sous dream, mais quel nom je lui donne à l'enregistrement ?
                        2 - Dans quel dossier/sous-dossier dois-je le mettre à l'aide de Filezilla ?
                        3 - est-ce tout ? Cela devrai marcher après ?

                        Merci de me répondre.

                        Ton site photo est super.

                        Bravo

                        Thierry JOUANIN
                        http://photosjouanin.ovh.org/
                        Thierry JOUANIN
                        http://photosjouanin.ovh.org/

                        Commentaire


                        • #13
                          tu copie puis cole code sur une page php que tu nommes proprietaire.php par exemple.

                          ensuite tu corriges 'mon dossier à changer' dans le code et tu le remplace par le nom de ton dossier.

                          tu upload ce fichier proprietaire.php à coté du dossier qui te pose problème et tu l'appelle depuis l'explorer... www.tonsite.com/components/proprietaire.php (pour l'exemple)

                          et après ça devrait être bon
                          Je vous remercie et vous invite à faire un tour sur creationphoto.ch

                          Commentaire


                          • #14
                            A l'attention d' Hyperion :

                            Est-ce que ce problème est lié à PHP 5 ?
                            Je n'ai ce problème que sur 2 sites qui sont tous les deux en PHP 5. Comme mes autres sites (en PHP 4) sont chez un autre hébergeur, je ne sais pas si le problème vient de PHP 5 ou de la configuration des hébergeurs.

                            Je suis un peu inquiet car mon hébergeur actuel compte migrer prochainement tous les sites sur PHP 5 aussi j'aimerais savoir ce qu'il en est.
                            Tous les services pour les sites Joomla! : sécurité, nettoyage de sites piratés, hébergement, SEO, applications Fabrik, migration, compatibilité mobiles, accessibilité, ...

                            https://www.betterweb.fr/services

                            Commentaire


                            • #15
                              ce problème est lier à linux et il est connu des hébergeurs ! il suffit de les contacter si vous vous en sortez pas... mais les explications ne seront pas très différentes de celles que je vous ai transmise vu que c'est celles de mon hébergeur...
                              Je vous remercie et vous invite à faire un tour sur creationphoto.ch

                              Commentaire

                              Annonce

                              Réduire
                              1 sur 2 < >

                              C'est [Réglé] et on n'en parle plus ?

                              A quoi ça sert ?
                              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                              Comment ajouter la mention [Réglé] à votre discussion ?
                              1 - Aller sur votre discussion et éditer votre premier message :


                              2 - Cliquer sur la liste déroulante Préfixe.

                              3 - Choisir le préfixe [Réglé].


                              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                              2 sur 2 < >

                              Assistance au forum - Outil de publication d'infos de votre site

                              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                              UTILISER À VOS PROPRES RISQUES :
                              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                              Problèmes connus :
                              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                              Installation :

                              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                              Archive zip : https://github.com/AFUJ/FPA/zipball/master

                              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                              et remplacer www. votresite .com par votre nom de domaine


                              Exemples:
                              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/
                              Pour executer le script: http://www..com/fpa-fr.php

                              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/cms/
                              Pour executer le script: http://www..com/cms/fpa-fr.php

                              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                              Voir plus
                              Voir moins
                              Travaille ...
                              X