Ftp + script php

  • Auteur de la discussion Auteur de la discussion DroP
  • Date de début Date de début
  • Tags Tags
    ftp
Nouveau WRInaute
voila j ai un script php qui creer un repertoire :
mkdir("ressources/articles/28/", 0777);
le repertoire se crée bien ms si je me connect avec un logiciel ftp ou ftp de mon site , je ne peut rien uploder dans se repertoire , ni le supprimer , ni faire koi que ce soit avec.

On m'a di que c est car le dossier se creer avec l'user : nobody dans le group: nobody or moi mon user est : drop (par exemple) group: drop

je voudrai savoir si il y avais une solution pour que mon script fonctionne et donc que le repertoire se mettre direct accessible pour mon user et mon groupe

merci de vos reponse

DroP
 
WRInaute occasionnel
Tu n'utilises pas les bon droit pour le dossier essai avec : mkdir("ressources/articles/28/", 0755);
 
WRInaute impliqué
Le 0777 est optionnel , c'est le CHMOD par défaut avec cette fonction .
Ton hébergeur utilise-t-il un espace web en safe mode ?
 
Nouveau WRInaute
qu est ce ke tu apelle un espace en safe mode ???

mon hebergeur est hosteur.com

il m avait di de faire un chown(); sur les dossiers ms pour executer cette commande il faut avoir les droits "root" or je ne px les avoirs
 
WRInaute occasionnel
Voila ce que c'est un espace en safe mode: http://fr.php.net/features.safe-mode
Tous les hebergeurs sont en safe-mode, ce qui n'empeche pas de cree des dossiers avec mkdir et de les modifier par FTP, t'as quoi comme client FTP?
Si c'etait un pobleme de safe_mode je pense qu'il y aurait un warning du moins quand tu tente par http d'acceder a ce dossier, ca donne quoi qd tu fais ca?

@+
David
 
Nouveau WRInaute
mon logiciel ftp c est Flashfxp

et y a pas de warning ou koi que ce soit lorsque je creer mon dossier et qu appelle tu accede a ce dossier par html ?
 
WRInaute occasionnel
ah oui flashfxp je l'avais mais il m'as enerve alors je l'ai virer(et puis c'est un shareware j'avais ni envie de l'acheter ni de le cracker), je te conseillerais plutot l'excellent FilleZilla gratuit et dispo pour les OS Windows.
Mais revenons au warning, il faudrait que tu essai de creer un dossier avec mkdir comme tu le faisais precedemment et d'y placer un fichier(n'importe qoui on s'en fous, une image, un .txt, un .html tres simple) toujours avec le meme script php. Une fois que c'est fait tu essai d'acceder par HTTP (donc avec ton navigateur habituel)(et non pas comme tu l'as dit par html) a ce fichier. le chemin devrait etre -http://www.tonsite.com/ton_pathh_cree_par_php/ton_fichier.html et si l'as tu as un warning recopie le nous, cela voudra dire qu'il y a effectivement un pb de droits. Mais moi je pencherais plutot pour flashfxp qui deconne.

@+
David
 
Nouveau WRInaute
alors du nouveau

now qd je fé :
$id_article = "1";
mkdir("ressources/articles/Animes/$id_article", 0775);

ca marche ca creer bien le repertoire et je px faire ce ke je vx avec ! suprimer up ect

et si derrier ca je fé :

mkdir("ressources/articles/Animes/$id_article/galerie", 0775);
le dossier galerie ne m est plus accecible !!! impossible de le del ou de duploader dedans !
 
Nouveau WRInaute
et ce n est pas flash fxp car j ai essayé avec le ftp du dos
ftp open .....
et ca fé la mmm chose : permission denied
 
WRInaute occasionnel
ah ok c'est a cause de la variable qu'il rame essai:
mkdir('ressources/articles/Animes/'.$id_article.'/galerie', 0755);
en respectant bien mes guillemets simples et les .
 
Nouveau WRInaute
non ce n est pas ca non plus
il me creer bien le repertoire donc il comprend bien la varriable ms tjs ce permission denied !

550 Can't remove directory: Permission denied
 
WRInaute occasionnel
avec ton client ftp, p.e flashfxp tu les voit ecrit en toutes lettres les permisions des dossiers je pense. Qu'il y a t-il d'ecrit pour ton dossier 'galerie' ? drwx---r-x ou bien drwxr-xr-x? ou encore autre chose?
 
Nouveau WRInaute
galerie : drwxr-xr-x owner:99 group:99

alors que si je cré moi mm mon dossier par mon logiciel ftp c :
drwxr-xr-x owner:drop group:drop
 
WRInaute occasionnel
ok alors drwxr-xr-x ca veut dire que c'est bien les droits 0755, mais le pb c'est que php est sous le owner/group:99, c'est pas bon ca (engueule ton hebergeur). Qui n'est donc pas le meme que le client ftp (group:drop). Essai de forcer PHP a changer de groupe avec chgrp() (voir http://se2.php.net/manual/fr/function.chgrp.php) mais je suis pas sur que cela va marcher
 
Nouveau WRInaute
ca ne px pas marché car ta fonction :
Seul le super-utilisateur (root) peut changer le groupe propriétaire d'un fichier arbitrairement

et je ne suis pas le root !!

ms ce ki m etonne le + c est ke ca marche si j en cré que 1 , ms que les sous rep apres ca ne marche plus , ca me depasse
 
WRInaute occasionnel
oui mais si le root fait partis de ton group c'est bon, c'est pour ca que tu devrais tenter, sinon oui c'est bizarre que ca marche avec un dossier mais pas avec un sous-dossier, strange...
 
WRInaute passionné
J'ai le meme problème...

//Création du dossier avec l'id de la maison
mkdir("images/maisons/$id", 0777);

Création du dossier ok, mais il est en nobody... au lieu d'avoir le nom normal de mon utilisateur, résultat, impossible de modifier les fichiers à l'intérieur!

Une idée ?
 
WRInaute discret
bon

les créations de répertoire et les chmod en marchent jamais en PHP (enfin correctement) surtout si le safe mode est activé...il y a des ruses mais cela reste des ruses

il faut que le fichier qui fait le mkdir ou chmod ait été crée par PHP et non uploadé...et encore ça peux merder...donc a fuir
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut