Problème de propriétaire des fichiers écrits par PHP

Bonjour,

Le problème est le suivant :

Les fichiers et dossiers des différents sites installés sur mon serveur dédié ont des propriétaires et groupes du genre :

Propriétaire / Groupe
[ul]toto / www_data
titi / www_data
Etc[/ul]

La ou ça se corse, c’est lors de l’écriture d’un fichier par PHP. Le fichier se trouve avec le propriétaire www-data au lieu de toto et le groupe reste inchangé.

Le fonctionnement des sites ne pose pas de problèmes mais il n’est pas possible d’écraser ces fichiers par FTP. Il faut les supprimer au préalable. Ces fichiers peuvent être téléchargés, supprimés et visualisés mais pas édités ou écrasés.

Il est bien sur possible au coup par coup de faire un chown ou chown -R pour changer le ou les propriétaire(s) mais cette option n’est pas satisfaisante.

Comment configurer le serveur pour supprimer cet inconvénient ? Et si possible, comment le configurer afin que les nouveaux serveurs virtuels aient d’office les propriétés souhaitées ?

En fait j’ai bien une petite idée qui vaut ce qu’elle vaut :

Dans Webmin > serveur Apache, en modifiant > Utilisateur et Groupe > Tourner sous le nom de l’utilisateur Unix.

Comme plusieurs sites sont en production, je n’ai pas osé tenter le coup.

Merci.

Note : Serveur dédié sous Debian Sarge

Rajoutes titi et toto à donc ton groupe www_data plus simplement non ?

en root dans /etc/group
->
www-data:x:33:titi,toto

[quote=“swiip81”]Rajoutes titi et toto à donc ton groupe www_data plus simplement non ?

en root dans /etc/group
->
www-data:x:33:titi,toto[/quote]

Bonjour,

Cette solution ne fonctionne pas :blush:

Quelqu’un d’autre a-t-il une idée ?

J’ai le même soucis pour certains fichiers de mes sites et malheureusement je n’ai pas encore trouvé de solution.

Quels sont les droits données aux fichiers???

755? 775? 770? …

[quote=“Ashgenesis”]J’ai le même soucis pour certains fichiers de mes sites et malheureusement je n’ai pas encore trouvé de solution.

Quels sont les droits données aux fichiers???

755? 775? 770? …[/quote]

Bonjour,

Pas de problèmes pour les droits qui doivent être dans mon cas (CMS GuppY) 777 sur de nombreux répertoires 775 sur d’autres et 666 ou 644 en fonction des fichiers concernés.

Le problème est un problème de propriétaire pour les fichiers écrits par PHP.

Si je trouve la solution, je ne manquerais pas de la communiquer ici.

Bonne journée

Bonjour,

Il me semble inévitable que les fichiers créés par un script php appartiennent à apache. C’est ce qui nécessite de passer certains répertoires du site à chmod 777 quand on installe un cms.

Ouvrir un accès ftp sous la propriété d’apache ne me semble pas une bonne idée, parce qu’en plus on se prive des possibilités de chroot pour la sécurité (le “home” du propriétaire d’apache n’est pas sur le site).

En fait, le seul inconvénient de cette situation est lorsqu’on veut supprimer des fichiers ou des répertoires créés par php (pour moderniser son cms, ou pour se débarrasser de fichiers uploadés par un pirate!).

1- pour des fichiers créés par php dans un répertoire “ftp”, on peut élargir les droits de ce répertoire sous ftp pour supprimer les fichiers sous ftp .

2- mais pour des fichiers créés par php à l’intérieur d’un répertoire lui-même créé par php, ce n’est plus possible, et il est nécessaire d’avoir un petit script php pour effacer les fichiers, du genre (à adapter!):

<?php $handle=opendir('tmp/'); while ($fichier=readdir($handle)) { if (($fichier != ".") && ($fichier != "..")) { $fichieraeffacer="tmp/$fichier"; unlink($fichieraeffacer); } } closedir($handle); ?>

Tyrtamos