Page 1 sur 1

erreur open-basedir sur page index

Posté : 14 mars 2014, 22:12
par filou11
Bonjour,
j'ai cette erreur sur ma page index:

Warning: is_file(): open_basedir restriction in effect. File(..) is not within the allowed path(s): (/customers/c/f/d/geneayannis.fr/httpd.www:/customers/c/f/d/geneayannis.fr/httpd.private:/customers/c/f/d/geneayannis.fr/tmp:/customers/geneayannis.fr/geneayannis.fr:/var/www/diagnostics:/usr/share/php) in /customers/c/f/d/geneayannis.fr/httpd.www/index.php on line 16

16 if( is_file($file) && substr($file,-4,4)=='.php')

J'ai cette erreur lorsque je lance ma page depuis chez l'hébergeur (one.com) mais pas quand je la lance en local avec WampServer.
Je vous donne l'adresse : http://www.geneayannis.fr/ Allez voir....
Cela ne marche ni avec IE, ni avec chrome.

le début de ma page Index.php
<?php

 
   // On initialise la liste des pages valides à un tableau vide
   $pagesOk = array();
  
   // On ouvre le répertoire des pages
   $pagesDir = opendir('./');
  
   // On lit le répertoire
   while($file = readdir($pagesDir))
   {
  
     // On vérifie qu'il s'agit bien d'un fichier
     // et que son extension est bien .html
     if( is_file($file) && substr($file,-4,4)=='.php')
  
       // Si c'est bien le cas, on ajoute la page à la liste des pages autorisées
       $pagesOk[] = $file;
   }
  
   // On commence par lire la page demandée
   // Si ce n'est pas vide
   if(!empty($_GET['page']))
     // On lit la valeur demandée
     $page = $_GET['page'];
   else
    // Sinon on utiliser index comme page par défaut
    $page = 'accueil';
  
   // On vérifie que la page demandée se trouve dans les pages autorisées
   // La liste contient désormais l'extension des fichiers, on ajoute donc '.html'
   // a la variable $page à contrôler.
   if(!in_array($page.'.php',$pagesOk))
   {
  
     // Elle n'y est pas, dans ce cas on peut renvoyer une erreur 404
     header("HTTP/1.0 404 Not Found");
  
     // On stop l'exécution du script ici
     exit;
  
   }
  
   // Arrivé ici, on sait que la page demandée existe forcément.
   // On va donc pouvoir commencer la construction de la page.
?>

 <head>
         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
         <title>
                 http://Www.GénéaYannis.fr
         </title>
         <!-- La feuille de styles "base.css" doit être appelée en premier. -->
         <link rel="stylesheet" type="text/css" href="styles/base.css" media="all" />
         <link rel="stylesheet" type="text/css" href="styles/modele03.css" media="screen" />
 </head>

 <body>

 <div id="global">

         <div id="entete">
<?php include './banniere.php'; ?>
<?php include './menu.php'; ?>
         </div><!-- #entete -->

         <div id="contenu">
 <!--  // On inclut la page demandée --> 
<?php include './'.$page.'.php'; ?>
         </div><!-- #contenu -->

         <div id="pied">
   <!--// On inclut enfin le pied de page  --> 
<?php include './pied.php'; ?>
         </div><!-- #pied -->
</div><!-- #global -->
Le code n'est pas de moi, je suis vraiment débutant en PHP, soyez indulgent :D :D

Merci d'avance de votre aide Philippe

Re: erreur open-basedir sur page index

Posté : 15 mars 2014, 21:57
par moogli
salut,

a priori tu essai d’accéder a un fichier sur lequel tu n'as pas les droits (au sens unix) vérifie le chmod qui lui est appliqué, voir le propriétaire ou le groupe.

@+

Re: erreur open-basedir sur page index

Posté : 15 mars 2014, 22:26
par filou11
Bonsoir,
merci pour votre réponse.
Je ne connaissait pas le "CHMOD".
Après recherche, sur la toile, à quoi cela correspondais, j'ai fait plusieurs essai, et cela ne change rien.

peut être une autre piste??

Encore merci de votre aide.

Philippe

Re: erreur open-basedir sur page index

Posté : 17 mars 2014, 12:17
par moogli
pas vraiment.
voici ce qu'indique la documentation
http://www.php.net/manual/fr/ini.core.p ... en-basedir

suivant ta version tu peux tenter le php.ini local, le htaccess ou avec [ur=http://ww.php.net/ini_set]ini_set[/url] (par exemple $old = ini_set('open_basedir','.');)

pour info corrige la gestiondes pseudo frame lorsque la page indiquée dans l'url n'existe pas c'est moyen de ne rien afficher que le message d'erreur php dans ce cas ;)


@+

Re: erreur open-basedir sur page index

Posté : 17 mars 2014, 19:39
par filou11
Bonsoir,
merci pour la réponse.
Je crois que je vais aller prendre une petite/grosse aspirine!!!

Je vais relire tous ce que j'ai pu voir la dessus, pour essayer de me dépatouiller, mais ne vous faites pas de soucis, vous n'êtes pas encore débarrassé de moi..... :D :D :D

Cordialement Philippe