wdrożenia PrestaShop

Panel administracyjny -> moduły (Warning: file_exists())

  • 0 Odpowiedzi
  • 3505 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

*

Offline cojack

  • Nowy
  • *
  • 13
  • 0
Panel administracyjny -> moduły (Warning: file_exists())
« dnia: Listopad 01, 2009, 03:55:29 pm »
Problem:
Gdy wchodzimy do Panelu administratora wybieramy zakładkę moduły wyskakuje nam komunikat:
Warning: file_exists(): open_basedir restriction in effect. File(/home/cojack/Dokumenty/Projekty/Presta/modules//index.php/index.php.php) is not within the allowed path(s): (/srv/http/:/home/:/tmp/:/usr/share/pear/) in /home/cojack/Dokumenty/Projekty/Presta/classes/Module.php on line 347

Rozwiązanie:
W pliku: classes/Module.php
Linia: 346

Dodajemy @ - małpkę przed file_exists
if (@file_exists($moduleFile = _PS_MODULE_DIR_.'/'.$name.'/'.$name.'.php'))

By wyglądało tak:
public static function getModulesDirOnDisk()
{
$moduleList = array();
$modules = scandir(_PS_MODULE_DIR_);
foreach ($modules AS $name)
{
if (@file_exists($moduleFile = _PS_MODULE_DIR_.'/'.$name.'/'.$name.'.php'))
{
if (!Validate::isModuleName($name))
die(Tools::displayError().' (Module '.$name.')');
$moduleList[] = $name;
}
}
return $moduleList;
}

Innym możliwym rozwiązaniem jest usunięcie pliku index.php z folderu modules i dodaniu pliku .htaccess z wpisem by nie można było listować zawartości katalogów:

Options -Indexes

Pozdrawiam.
« Ostatnia zmiana: Listopad 01, 2009, 04:16:16 pm wysłana przez cojack »