[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
Merci de prendre le temps de m'aider.
J'ai essayé un 'su apache' mais j'obtiens le message suivant : "this account is currently not available"
et /tmp est bien en chmod 777.
Penses tu savoir d'où cela vient?
As-tu testé ton script en local, voir si ce n'est pas une erreur ds le code?
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?