failed to open stream: Permission denied et CHMOD - PHP - Programmation
Marsh Posté le 19-06-2010 à 22:22:18
Le premier chiffre, c'est le propriétaire, le deuxième c'est le groupe et le troisième ce sont les autres.
Pour la deuxième question, ça dépend un peu du serveur.
Pour la troisième question, pour pouvoir supprimer un fichier, il faut quand-même être loggé sur le serveur donc ce n'est pas n'importe qui, vu que tu es le seul à pouvoir accéder à ton serveur...
Marsh Posté le 19-06-2010 à 23:10:36
si tu utilises un client FTP tu peux avoir une partie des infos. Souvent le propriétaire est "www-data" qui est un utilisateur du serveur, créé par Apache.
Le groupe est le groupe auquel appartient cet utilisateur.
Typiquement tu pourrais autoriser www-data en 7 sur un dossier/fichier, mais interdire à tous les autres du même groupe d'utilisateurs l'écriture dans le dossier (ou fichier)...
et les autres, ce sont tous les utilisateurs qui ne sont ni "www-data" ni dans son groupe
Marsh Posté le 20-06-2010 à 20:56:58
franzBesac a écrit : Le premier chiffre, c'est le propriétaire, le deuxième c'est le groupe et le troisième ce sont les autres. |
Merci, mais ca ne répond pas à ma question...
NewsletTux a écrit : si tu utilises un client FTP tu peux avoir une partie des infos. Souvent le propriétaire est "www-data" qui est un utilisateur du serveur, créé par Apache. |
Quand je suis connecté en FTP, je dispose de quels droits ?
Si j'ai bien compris, ces droits ne sont valables que pour les utilisateurs qui se logguent sur la machine physique ?
Marsh Posté le 21-06-2010 à 08:59:49
logiquement t'as un utilisateur pour le compte FTP (qui a son propre compte) mais en règle générale, ce compte fait partir du groupe "users" auquel www-data appartient également si je ne m'abuse.
oui c'est pour "quand tu te logges sur la machine" mais aussi quand tu exécutes un fichier/une instruction.
Genre tu fais appel à une commande fopen, fwrite, exec, etc.
Marsh Posté le 21-06-2010 à 16:19:32
Mais alors ca veut dire que n'importe qui peut faire un fopen sur mon dossier ?
Je peux pas augmenter les privilèges du moteur php de mon serveur ?
Marsh Posté le 22-06-2010 à 00:56:09
n'importe qui qui exécute le script PHP le fait selon les droits du compte auquel appartient le fichier PHP, oui.
D'où l'explication de ne pas mettre n'importe quelle permission n'importe comment ...
Marsh Posté le 22-06-2010 à 17:14:26
oui
si l'un de tes fichiers génère p.ex. des vignettes d'avatar, avatars uploadés par tes visiteurs p.ex.
je me suis fait hacker comme ça une fois, l'avatar était un jpeg avec un code php qui exécutait un code malicieux depuis un serveur basé en chine...
Si maintenant ce ne sont que des "gens de confiance" qui vont écrire des données, sous réserve de failles, tu risques moins.
Marsh Posté le 22-06-2010 à 22:12:17
Je comprends mal la technique... A quel moment le code php dans le jpeg est-il exécuté ?
Marsh Posté le 23-06-2010 à 00:25:31
Si t'as le courage de lire :
http://www.simplemachines.org/comm [...] c=313201.0
http://www.simplemachines.org/comm [...] msg2059911
tu peux faire une recherche de "krisbarteo" sur le forum SMF tu verras tous les gusses qui s'en sont plaints.
Marsh Posté le 23-06-2010 à 03:10:57
Merci
Normalement ya pas de problème... Je ne propose pas d'upload
Marsh Posté le 23-06-2010 à 09:08:17
justement, si tu ne proposes pas d'upload, pourquoi ne pas proposer un CHMOD 766 pour tes fichiers ?
Voire un 644 qui serait encore mieux.
Marsh Posté le 23-06-2010 à 16:24:07
Justement, j'obtiens cette erreur "Permission denied" si je ne suis pas en 777...
Marsh Posté le 23-06-2010 à 17:05:11
quelle fonction php utilises-tu qui nécessite un +X ?
Marsh Posté le 23-06-2010 à 19:31:30
c'est swift mailer qui fait un fopen quand tu ajoutes une pièce jointe à ton message
Marsh Posté le 19-06-2010 à 18:27:23
Bonjour,
Sur mon site, je veux générer des fichiers pdf avec fpdf et les stocker dans un dossier.
- Si ce dossier est en 777, tout va bien, le pdf est bien généré.
- Si je passe le dossier en 775, j'ai l'erreur failed to open stream: Permission denied
J'ai plusieurs questions :
- Qui sont : - Le propriétaire ; - Le groupe ; - Les autres ?
Sur wikipedia ainsi que sur tous les tutos, on m'explique avec assurance ce que signifie 1,2,3,4,5,6,7, mais JAMAIS qui sont ces "propriétaire", "groupe", et "autres"
- D'après l'erreur que j'ai, je déduis que le moteur PHP n'a pas plus de droit sur son propre serveur que le premier couillon venu, et qu'il a donc sa place dans les "autres".
Comment lui donner du galon ?
- Si je met mon dossier en 777, ca veut dire que n'importe qui peut le modifier, y compris de l'extérieur via internet ???
Pourriez-vous m'éclairer ? Merci d'avance
Message édité par Pascal le nain le 19-06-2010 à 18:34:36