Permission denied - move_uploaded_file

Résolu
letrancheur Messages postés 210 Date d'inscription   Statut Membre Dernière intervention   -  
letrancheur Messages postés 210 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
je fais un transfère d'images et j'ai un problème de permission mais ne sais ou.

Voici mes 3 messages

Notice: Use of undefined constant DOCUMENT_ROOT - assumed 'DOCUMENT_ROOT' in /var/www/html/include/fonction.php on line 343


Warning: move_uploaded_file(/var/www/html/img/reception/Letrancheur_20160529000324.jpg): failed to open stream: Permission denied in /var/www/html/include/fonction.php on line 343


Warning: move_uploaded_file(): Unable to move '/tmp/phpayDR6X' to '/var/www/html/img/reception/Letrancheur_20160529000324.jpg' in /var/www/html/include/fonction.php on line 343

Mon arborésance est celle-ci

.
└── var
├── tmp
└── www
└── html
├── img
│ └── reception
└── include
└── fonction.php


drwxr-xr-x root root var
drwxrwxrwt root root tmp
drwxr-xr-x root root www
drwxr-xr-x root root html
drwxr-xr-x root root img
drwxr-xr-x root root reception
drwxr-xr-x root root include
-rw-r--r-- root root fonction.php

Voici la ligne 343
$test=move_uploaded_file($fichier['tmp_name'],$_SERVER[DOCUMENT_ROOT].'/img/reception/'.$nouveau_nom);


Une idée?
Merci d'avance

4 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Oubli le tmp .. j'avais lu en diagonale.

Par contre, le chemin vers lequel le script essaye d'uploader l'image semble correct:

/var/www/html/img/reception/Pyton_20160529013621.jpg

Dans ce cas, essayes ( juste pour voir...) de mettre les droits en 777 sur les répertoires html et img (via un chmod 777 )

Sinon, faudrait mettre le user www-data propriétaire sur ton arboresence. (via un petit chown -R )
2
letrancheur Messages postés 210 Date d'inscription   Statut Membre Dernière intervention   7
 
je viens de mettre www html et img en 777 et cela fonctionne du coup comment dois-je mettre les dossiers pour rendre cela tout de même protégé?
Parceque j'avais lu que pour les dossier il était conseillé de mettre les dossiers en 755
0
letrancheur Messages postés 210 Date d'inscription   Statut Membre Dernière intervention   7
 
C'est super étrange car je viens de les remettres en 755 et cela continue de fonctionner bisare
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Et comme je te l'avais également proposé ... tu peux changer le owner du dossier.
A la place de root ... mettre www-data (c'est le user utilisé par apache normalement)
0
letrancheur Messages postés 210 Date d'inscription   Statut Membre Dernière intervention   7
 
a voila autant pour moi j'ai coché par erreur un case qui a mis tout les sous-dossiers en 777 du coup je viens de remettre réception en 755 et cela ne passe plus donc c'est le réception que je dois protéger une idée?
0