Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2084 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  mkdir et chown dans un script php

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

mkdir et chown dans un script php

n°1392442
kubuntux
Posté le 21-06-2006 à 19:22:29  profilanswer
 

Bonjour,
 
je développe une interface d'admin pour gérer le contenu d'un site sur un dedié ovh
 
lorsqu'un utilisateur upload une image, j'aimerai la stocker dans un dossier spécifique créé à la volé en php
 
je fais donc mkdir('/home/xxx/nom_du_dossier',0775);
 
manque de chance ( mais c'est plutot normal niveau securité ) les dossiers sont crées sous l'utilisateur Nobody et le groupe Nobody
 
du coup, impossible d'uploader un fichier à l'interieur
 
j'ai donc testé avec :
 
shell_exec('chown -R nom_d_utilisateur /home/xxx/nom_du_dossier');
shell_exec('chgrp -R nom_du_groupe /home/xxx/nom_du_dossier');
 
mais rien à faire ca ne marche pas, j'ai essayé avec System, Exec, Passthru...
 
la commande 'chown -R nom_d_utilisateur /home/xxx/nom_du_dossier' lancée en ssh fonctionne très bien, avec la recursivité, je change les droits de tous les dossiers et sous dossiers
mais celà ne fonctionne pas depuis un script php
 
je vais installer suphp voir si celà peut résoudre mon probleme
 
si quelqu'un a une autre idée :)


Message édité par kubuntux le 21-06-2006 à 20:19:59
mood
Publicité
Posté le 21-06-2006 à 19:22:29  profilanswer
 

n°1393403
120120
Que du bonheur :)
Posté le 23-06-2006 à 06:33:49  profilanswer
 

Salut,
 
Tu ne pourras (devrait  :??: )pas pouvoir exécuter de chmod directement, car l'utilisateur avec qui est lancé le deamon Apache ne le permet pas (nobody:nobody).
 
Tu peux essayer avec ça :
 

Code :
  1. error_reporting(E_ALL);
  2. $handle = popen('/./tonScript.sh 2>&1', 'r');
  3. echo "'$handle'; " . gettype($handle) . "\n";
  4. $read = fread($handle, 2096);
  5. echo $read;
  6. pclose($handle);


 
Il va te renvoyer dans l'echo le résultat de ta commande passé au shell
 
Il te reste plus qu'a faire un
 
ftopen(tonScript.sh, a+)
echo chmod 777 /... >>tonScript.sh
 
Mais bon tu dois donner les droits a apache.
 
 
Ou sinon la meilleur méthode (d'après moi), sont les CGI.
 
 
:)


---------------
http://caledonien.org
n°1394819
kubuntux
Posté le 26-06-2006 à 11:13:37  profilanswer
 

apres installation de SuPHP, mon problème est réglé
 
les scripts php sont executés sous l'user proprietaire du coup, les repertoires et fichiers crées par le script php appartiennent au bon user
 

n°1394828
stef_dober​mann
Personne n'est parfait ...
Posté le 26-06-2006 à 11:19:05  profilanswer
 

Bonjour,
 
je suis moi meme hébergé par OVH et j'ai eu un problème accès similaire (moi c'était sur des fichiers uploadé ) il y a quelque temps,
j'ai tous simplement utilisé la fonction chmod() de php http://fr.php.net/chmod  
 
exemple :

Code :
  1. <?PHP
  2. $uploaddir = "/home/toto/www/dl/rep1/";
  3. // met en chmod 777 le repertoire  
  4. if (! is_dir($uploaddir)) {
  5.  if (! @chmod($uploaddir,777))
  6.         }
  7. ?>



---------------
Tout à commencé par un rêve...

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  mkdir et chown dans un script php

 

Sujets relatifs
cherche un script phpscript pour désactiver les services DNS dynamique
Script ouverture de pop-upaide pour petit script php
[PHP] script pour verifier si un host est on-lineInserer des <script></script> par innerHTML ??
Script Réseau en VBscript et démarrage de Windowsformulaire HTML sans script CGI
Execution d'un script à distance : linux -> winXPProblème avec le script prog SquirrelMail...
Plus de sujets relatifs à : mkdir et chown dans un script php


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR