J'ai donc un ennui avec la commande PHP CHMOD()
Je suis sur un serveur dedian avec XAMPP d'installé.
le groupe www-data possède les droits rwx sur le répertoire /opt/lamp (avec l'ensemble des sous répertoires).
Dans mon code php (fonction servant d'upload) je souhaite temporairement autoriser l'écriture d'un utilisateur authentifié dans ce répertoire /opt/lamp/htdoc/monsite/repUpload.
donc j'ai un malheureux bout de code qui fait ça:
sous windows, mon code s'exécute sans souci et le fichier client est bien uploadé. Sous linux en revanche j'obtiens ce message d'erreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $dossier = '../repUpload/upload/'; // permettre a un fichier d'etre uploader. chmod ($dossier, 0755); /*code de gestion*/ chmod ($dossier, 0644);
Sous windows, il n'y a pas de gestion de sécurité des répertoires dc le code fonctionne tt le temps. Sous linux, j'ai trouvé beaucoup de gens dans ma situation et pas de solution efficace si ce n'est autoriser le répertoire à etre en permanence en écrire ce qui est assez moyens.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Warning: chmod() [function.chmod]: Opération non permise in ********** on line 13 Warning: move_uploaded_file(../repUpload/****) [function.move-uploaded-file]: failed to open stream: Permission non accordée
Quelqu'un saurait il me dire comment contourner cette difficulté?
Partager