Aller au contenu

[50% RESOLU] PHP - chmod & chown des fichiers


ggbce

Messages recommandés

J'ai créer un script PHP pour uploader des fichiers depuis une page web directement vers mon serveur (très pratique pour un site qui contient des logiciels et pilotes pour le public).

Les fichiers "s'upload" sans problème !

Mon site web à également un accès via FTP pour éditer les pages du et en faire la gestion, sauvegardes, ...

J'ai 2 problèmes:

1- Mon site est situé dans un dossier qui à les droits propriétaires pour l'usager "virtual" qui est le même usager utilisé pour le groupe GUEST de mon serveur FTP. Lorsqu'un fichier est uploadé en PHP vers le serveur, ce fichier utilise le propriétaire "apache". C'est pas si grave que ça, mais depuis mon usager FTP je ne peux plus le déplacer, supprimer ou renommer. Comment faire pour que PHP utilise l'usager "virtual" pour les fichiers uploadé ?

2- Tous les fichiers uploadé avec PHP ont les autorisations: -rwxr-xr-x

Ce qui n'est pas très sécuritaire (en exécution). Comment faire pour que tous les fichiers uploadé aient le masque pour: -rw-r--r-- ?

Avec mon client FTP c'est OK.

Je ne trouve rien dans PHP.INI pour ça

Lien vers le commentaire
Partager sur d’autres sites

Et bien pour le chmod c'est plutot simple:

chmod ("/data/$userfile_name", 0644 );

Mais pour le chown j'ai un p'tit problème:

chown ("/data/$userfile_name", "virtual");

Warning: chown failed: Opération non permise

Et dans la doc c'est écrit:

chown

chown -- Change le groupe propriétaire du fichier.

Description

int chown (string filename, mixed user)

chown() change le groupe propriétaire du fichier. Seul le superutilisateur (root) peut changer le propriétaire d'un fichier.

chown() renvoie TRUE en cas de succès, "FALSE" sinon.

1- chown ne permet pas de changer le propriétaire, mais uniquement le groupe (forcément car l'usager apache n'a pas les droits administrateurs). Malgré ça, d'avoir simplement le groupe sur le bon usager peut suffir en choisissant un chmod différent (0664).

2- La commande ne fonctionne pas du tout dans mon cas et je ne sais pas trop pourquoi ??? S'il l'opération chmod est permise... je vois pas pourquoi le chown ne l'est pas !

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...