Open_basedir >>> désactivation ou meilleure configu

Eléphanteau du PHP | 28 Messages

15 nov. 2006, 11:28

Bonjour !

Dans un sujet précédent (http://www.phpfrance.com/forums/voir_sujet-24305.php), j'expliquais que mod_security bloquait l'envoi d'image pour les avatars de mon forum en PHPBB.

Après avoir commenté la ligne qui posait problème, cela ne fonctionnait toujours pas...

Il semble que cela vienne de open_basedir dans php.ini. J'ai donc également commenté la ligne de open_basedir et l'envoi d'avatar fonctionne maintenant.

Mais n'y a-t-il pas une meilleure solution ?
Est-il possible d'avoir une configuration de open_basedir qui permette l'envoi d'avatar sur le forum phpbb ?

Merci pour votre aide ! :)
SecondSight
---------------------------
Je ne suis pas du tout expert en la matière. Mon métier, c'est instituteur, pas informaticien, mais je veux bien apprendre, quand j'en ai le temps. :-)
Le site de mes élèves :
http://www.bellepierre.info

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

15 nov. 2006, 15:37

Bonjour,

La directive open_basedir permet de cloisonner un virtualhost dans une arborescence (=un dossier et ses sous-dossiers)
Vérifie :
1) que le répertoire où tu essayes d'uploader (c'est à dire le répertoire de destination ET le répertoire temporaire) sont bien dans l'arborescence autorisée par open_basedir.
2) que tu as défini correctement la variable open_basedir dans ton httpd.conf
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 28 Messages

18 nov. 2006, 20:02

Je ne savais pas qu'il pouvait y avoir un répertoire temporaire (je ne suis pas informaticien - j'apprends "sur le tas"). Je vais donc me renseigner là-dessus.

Ce que je ne comprends pas trop, c'est que lorsque j'utilise un éditeur (en l'occurence FCKEditor sur PHPNuke) pour envoyer des images et des fichiers sur le serveur, cela se fait sans problème.
Mais pour l'envoi d'avatar (avec le forum PHPBB installé avec PHPNuke), cela ne marche pas. Et pour que ça marche, il faut que je désactive open_basedir.

Il y aurait donc un répertoire lié au forum PHPBB qui ne serait pas inclus dans l'arborescence autorisée par open_basedir ?

Si je tape :
open_basedir=/home/repertoire_de_monsite1/www/:/home/repertoire_de_monsite2/www/
Ca ne marche pas.

Cela veut-il dire que je dois écrire sans les www ?
open_basedir=/home/repertoire_de_monsite1/:/home/repertoire_de_monsite2/

Qu'en pensez-vous ?

Merci. :)
SecondSight
---------------------------
Je ne suis pas du tout expert en la matière. Mon métier, c'est instituteur, pas informaticien, mais je veux bien apprendre, quand j'en ai le temps. :-)
Le site de mes élèves :
http://www.bellepierre.info

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

19 nov. 2006, 16:56

Fais un phpinfo et regarde la variable upload_tmp_dir ça te donnera le dossier temporaire utilisé pour faire les upload
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 28 Messages

22 nov. 2006, 08:29

J'ai : no value

J'ai mis /tmp: dans open_basedir et ça fonctionne maintenant.

Merci. :)
Modifié en dernier par SecondSight le 22 nov. 2006, 19:21, modifié 1 fois.
SecondSight
---------------------------
Je ne suis pas du tout expert en la matière. Mon métier, c'est instituteur, pas informaticien, mais je veux bien apprendre, quand j'en ai le temps. :-)
Le site de mes élèves :
http://www.bellepierre.info

Mammouth du PHP | 684 Messages

22 nov. 2006, 16:22

Un petit résolu :pouce:
Zigz4g