Probleme de permissions

WRInaute discret
Bonjour,

Je souhaite creer un grand nombre de dossiers pour y classer les images que j'ai sur mon serveur.
J'ai donc utilise un script PHP qui a cree les dossiers. Maintenant qu'ils sont crees j'essaye d'y copier des fichiers (par un nouveau script PHP) mais la je me retrouve avec l'erreur
Warning: copy() [function.copy]: SAFE MODE Restriction in effect. The script whose uid is 4754 is not allowed to access .....

meme en me connectant sur le ftp je ne peux pas changer les permissions de ces dossiers! (je suis sur un hebergement sivit mutualise donc pas d'acces root)

comment puis-je faire?
merci!
 
WRInaute occasionnel
c'estbizarre, parce que normalement si c'est ton script php qui créé les dossiers, il devrait avoir les permissions pour y écrire. Es-tu sur que l'erreur ne vient pas d'ailleurs ?
 
WRInaute discret
La creation des dossiers et l'ecriture ne sont pas fait dans le meme script php. Ca fait qu'apparemment les Userids sont differentes les deux fois d'ou le probleme de permission...
 
WRInaute accro
dailleurs je vois que tu utilise copy(), c'est move_upload_files depuis quelqeus versions de php :)

et tu n'aurai pas tout simplement un problème de chemin ? met l'erreur complete ici sans les "..." et essaye un chmod("777") sur le repertoire
 
WRInaute accro
>> meme en me connectant sur le ftp je ne peux pas changer les permissions de ces dossiers!

par contre ça c'est normal, l'user "ftp" est différent de ton user php, donc avec le safe_mode à "on" tu ne peux pas modifier les droits d'un repertoire crée en php.
ce que je ne comprend pas, c est que si tu crée le répertoire en php, il n'y a apas de raison que tu ne puisse pas y copier des fichiers. c'est pour ca, donne l'erreur complete
 
WRInaute discret
voici l'erreur:
Warning: copy() [function.copy]: SAFE MODE Restriction in effect. The script whose uid is 8567 is not allowed to access /home/local/apache/htdocs/sites/t/monsite.com/folder/g4 by uid 2420 in /home/local/apache/htdocs/sites/t/monsite.com/gestion/copie.php on line 17
 
WRInaute discret
Avec mk dir 755 seulement le propriétaire à le droit d'écrire dans le répertoire : et dans ton cas le propriétaire c'est ton script.

Si tu veux faire une modif global pour reprendre la main je te conseille de faire du récursif sur tous les répertoires (genre un petit script qui va faire des chmod 775 sur tout les répertoires).

Aprés ton comptes ftp est surement membre du groupe et tu pourras de nouveaux reprendre la main sur les fichiers et répertoires sinon demande aux exploitants de te mettre en membre du groupe de ton site.
 
WRInaute discret
Avec le SAFE MODE sur ON il est fortement déconseillé de créer des repertoires avec la fonction MKDIR (les problèmes de droits sur ces répertoires sont difficilement surmontables...).

La solution (un peu lourde) consiste à ouvrir un session FTP depuis le script (ftp_connect() ) et de créer les répertoires avec ftp_mkdir(),
ne pas oublier de donner les bonnes permissions...

Ensuite, tu peux manipuler normalement ton repertoire et son contenu.
 
WRInaute discret
le chown ne fonctionne pas non plus.
que ce soit depuis mon client ftp ou depuis un nouveau script, c'est toujours refuse.

donc je vais tout refaire avec le ftp_connect ftp_mkdir
et ensuite pour creer, copier des fichiers, quelle commande utiliser pour eviter ce type de probleme a l'avenir ?

Merci!
 
WRInaute discret
quelle est la commande pour faire de l'utilisateur ftp un membre du groupe ?

et il vaut pas mieux 775 pour que celui-ci est un droit d'ecriture sur les dossiers/fichiers en question ?

merci
 
Discussions similaires
Haut