J’ai un script php qui doit créer dans un repertoire prédéfini des fichiers .
Bien entendu sous linux le fichier ne se crée pas (sous windows ca marche)
Comment dois je m’y prendre dans le gestion des droits etc?
Si j’ai bien compris il faut évidement que le script ai le droit d’écrire dans le répertoire.
Mais quel est l’utilisateur utilisé par apache?
un ls- la de mon repertoire ou mon scrit doit ecrire donne ceci.
En C ça ne poserait pas de problème, en php je ne sais pas.
Vérifie aussi les droits sur tout le chemin de ton répertoire (c’est à dire les droits des répertoires parents)
Qu’est ce que tu cherches a faire exactement comme appli ?
c’est bizarre de vouloir ecrire dans un rep utilisateur avec une appli web…
Faut pas s’amuser a changer les droits n’importe comment. Parfois, c’est simplement un petit souci de conception de l’appli qu’il faut regler. Et ca permet bien souvent d’ameliorer les choses aussi sous windows
Edité le 09/10/2007 à 20:05
chmod u+w fichier => ajoute les droits en écriture pour le propriétaire
chmod g+w fichier => ajoute les droits en écriture pour le groupe
chmod o+w fichier => ajoute les droits en écriture pour les autres
Sinon, y a les ACLs qui se règlent avec la commande setfacl, mais bon, c’est pas forcément activé par défaut.
En réponse à une requête bien précise, le serveur stoque les résultat sous forme de csv qui est ensuite envoyé par mail en pièce jointe.
Et sinon je ne veux pas écrire dans un répertoire utilisateur mais dans var/www/geoloc (peux être est ce cela que tu appelles rep util, si c’est cela je m’en excuse).
et la le fichier se crée enfin sur le serveur.
Cependant j’aimerais que l’user jerome puisse avoir aussi ce droit la.
J’ai edité etc/group et j’ai fait ceci.
www-data:x:33:jerome
jerome deviens donc membre du groupe www-data ou je me trompe?
Une fois jerome dans le groupe www-data quel chown faire pour que tout les utilisateurs du groupe www-data puissent avoir les droits pour créer les fichiers?
dans ton cas, ce que tu as fait est la bonne solution.
Mais il faut aussi modifier le groupe proprietaire du repertoire :
commande que tu aurais du lancer
commande que tu vas lancer pour modifier le groupe proprio du rep
puis
ou
Pour ton utilisateur jerome, tu as fait la bonne chose mais il vaut mieux eviter de tripoter le fichier passwd a la main et privilegier l’utilisation des commandes usermod, useradd et userdel
Sinon, je te conseille de lire la doc officielle de ta distrib sur ce probleme extremement basique qu’est la gestion des droits et des utilisateurs.
Edité le 09/10/2007 à 21:22