[PHP] upload_tmp_dir
gregz
-
gregz -
gregz -
Bonjour à tous.
Voilà, j'ai un VPS (serveur privé virtuel) et plusieurs sites dessus.
Je souhaite autorisé l'upload de fichier par formulaire avec PHP sur ce serveur.
Pour la config du php.ini, j'ai :
- openbase_dir non déclaré
- file_uploads à On
- upload_tmp_dir est vide
- max file size à 2Mo
Lors de mes tests, le fichier est bien envoyé par le formulaire (reponse ok de is_uploaded_file) mais move_uploaded_file renvoie 'false'. Les logs me disent que je n'ai pas accès ( failed to open stream: Permission denied ) puis que le depalcement du fichier est donc impossible (Unable to move '/tmp/php1pewgR' to...)
Dès lors, je vois que mon fichier temporaire est bien dans /tmp, donc que c'est normal que j'y accède pas (pas conseillé apparemment).
Ma question est : que mettre dans 'upload_tmp_dir' pour que chaque vhost puissent y acceder ?
J'espère avoir été clair, sinon n'hésitez pas à me demander de préciser.
Merci d'avance pour vos lumières
greg
Voilà, j'ai un VPS (serveur privé virtuel) et plusieurs sites dessus.
Je souhaite autorisé l'upload de fichier par formulaire avec PHP sur ce serveur.
Pour la config du php.ini, j'ai :
- openbase_dir non déclaré
- file_uploads à On
- upload_tmp_dir est vide
- max file size à 2Mo
Lors de mes tests, le fichier est bien envoyé par le formulaire (reponse ok de is_uploaded_file) mais move_uploaded_file renvoie 'false'. Les logs me disent que je n'ai pas accès ( failed to open stream: Permission denied ) puis que le depalcement du fichier est donc impossible (Unable to move '/tmp/php1pewgR' to...)
Dès lors, je vois que mon fichier temporaire est bien dans /tmp, donc que c'est normal que j'y accède pas (pas conseillé apparemment).
Ma question est : que mettre dans 'upload_tmp_dir' pour que chaque vhost puissent y acceder ?
J'espère avoir été clair, sinon n'hésitez pas à me demander de préciser.
Merci d'avance pour vos lumières
greg
Configuration: Windows XP Firefox 2.0.0.1
4 réponses
-
Salut!
As tu vérifié qu' Apache a les droits sur le dossier temp de ton serveur?-
-
-
En fait j'ai aussi un pack mutualisé chez le même hébergeur, et sur celui ci le script fonctionne (c'est juste un fichier de test avec un form).
D'après ce que je trouve sur google, cela peut aussi venir d'une configuration inadaptée du fichier httpd.conf.
Mais je ne vois pas quoi changer pour que chaque fichier temporaire envoyé par le formulaire se stocke dans un repertoire '/temp' (par exemple) à la racine du domaine qui contient ce formulaire...
D'autres pistes?
-
-
-
Est ce que tu sais si cela peut venir de la différence de version PHP ? Sur le pack mutualisé, c'est PHP 4.4.4, alors que sur le VPS c'est PHP 5.0.4...
-
Résolu.
Un 'ls -l' de la racine m'affiche le dossier /tmp avec tous les droits.
Je fais par dessus un 'chmod 0777 /tmp', et l'upload fonctionne...
Si ca peut aider quelqu'un...
merci a+