Page 1 sur 1

Include et path

Posté : 22 juil. 2008, 17:49
par Rei Itchido
Bonjour à tous

Un petit truc que je pige pas avec des include()

J'ai file1.php à la racine, un repertoire include contenant file2.php et file3.php

Dans file1.php j'ai
include('./include/file2.php');
Dans file2.php j'ai
include('file3.php');
En local aucun soucis.
Sur un serveur que j'ai chez OVH, pas de problème non plus.
Mais j'ai un autre serveur chez OVH où je me tape une erreur
open_basedir restriction in effect. File(/file3.php) is not within the allowed path(s)
Qu'est-ce qui peut faire que dans les 1er cas cela fonctionne et pas dans le 3ème? Une config php?

Posté : 24 juil. 2008, 10:56
par sypnosis548
Salut

oui open base_dir est une configuration ayant attrait à la sécurité. Il limite l'accès aux ressources dans les répertoires "non authorisées" lors de l'utilisations des fonctions comme include, fopen etc... Dans ton cas, pour je ne sais quelle raison, ton inlude semble vouloir attaquer un fichier à la racine du serveur, ce qui n'est bien sur pas un dossier authorisé.

Posté : 24 juil. 2008, 11:14
par Rei Itchido
Effectivement, j'ai du neutraliser open_basedir en mettant none comme valeur.
Ce que je ne saisi pas c'est que mon fichier inclus ne fait qu'un simple echo et je ne vois pas pourquoi il va chercher à la racine quoi que ce soit...

Posté : 24 juil. 2008, 12:54
par Sékiltoyai
Vérifie l'include_path pour cela...

Posté : 24 juil. 2008, 13:59
par Rei Itchido
L'include path est .:
Cela devrait fonctionner.

Posté : 24 juil. 2008, 14:45
par Sékiltoyai
Bizarre. Bah en tout cas théoriquement si tu modifies l'open_basedir cela fonctionnera.

Posté : 24 juil. 2008, 14:59
par Rei Itchido
Oui ça fonctionne avec none.
Mais je ne saisi toujours pas pourquoi ça ne veut pas avec la valeur de base.