[contact-form-7 id="24085" title="Feedback RU"]

Новые шаблоны

PrestaShop 1.5.x./1.6.x. Как включить отображение ошибок (Режим отладки)

Появление белого экрана при попытке зайти в магазин PrestaShop означает наличие ошибок сервера.

Отображение ошибок

1. Прежде всего, нужно включить встроенный в PrestaShop Режим отладки (Debug Mode). Откройте файл config\defines.inc.php и найдите следующую строку:

define('_PS_MODE_DEV_', false);

измените ее следующим образом

define('_PS_MODE_DEV_', true);

Логирование ошибок

2. Чтобы записать ошибки без отображения их на сайте, нужно открыть файл index.php из корневой папки PrestaShop и добавить сверху следующий код:

<?php error_reporting(0); 
$old_error_handler = set_error_handler("userErrorHandler");

function userErrorHandler ($errno, $errmsg, $filename, $linenum,  $vars) 
{
$time=date("d M Y H:i:s"); 
// Get the error type from the error number 
$errortype = array (1    => "Error",
2    => "Warning",
4    => "Parsing Error",
8    => "Notice",
16   => "Core Error",
32   => "Core Warning",
64   => "Compile Error",
128  => "Compile Warning",
256  => "User Error",
512  => "User Warning",
1024 => "User Notice");
$errlevel=$errortype[$errno];

//Write error to log file (CSV format) 
$errfile=fopen("errors.csv","a"); 
fputs($errfile,"\"$time\",\"$filename: 
$linenum\",\"($errlevel) $errmsg\"\r\n"); 
fclose($errfile);

if($errno!=2 && $errno!=8) {
//Terminate script if fatal error
die("A fatal error has occurred. Script execution has been aborted");
} 
}
?>

Сохраните изменения и зайдите на свой сайт или в админ панель Prestashop.

После этого на сервере появится файл errors.csv . В нем будет вестись запись возникающих ошибок.

PrestaShop 1.5.x./1.6.x. Как включить отображение ошибок (Режим отладки), 5.0 out of 5 based on 1 rating
  • Ralph Stirrat

    hi were are the csv files located?

    • Alex Ross

      It should be available at the same folder as your index.php file.

  • shmm

    Спасибо, смог найти ошибку:

    Перенес prestashop с хостинга на xampp, все сделал правильно, кроме настройки юзера в MySql.

    Проблема решилась после того, как для юзера БД поставил Хост = localhost вместо «%» («Привелегиях > Информация учетной записи > Хост»)

  • shmm

    Спасибо, нашел ошибку — неправильно был настроен юзер БД.