Ser. Posted July 20, 2020 Share Posted July 20, 2020 Bonjour, J'ai essayé de suivre des tutos et des pages de forum pour activer le log d'erreur, mais je ne trouve pas les instructions contenant "display" ou autres ini_set donnés dans ces aides. Par exemple celle-ci: Voici mon fichier config.inc.php en entier. Mon hébergeur est Ikoula, et ma version presta 1.7.5.2. <?php $currentDir = dirname(__FILE__); /* Custom defines made by users */ if (is_file($currentDir.'/defines_custom.inc.php')) { include_once($currentDir.'/defines_custom.inc.php'); } require_once($currentDir.'/defines.inc.php'); require_once(_PS_CONFIG_DIR_.'autoload.php'); $start_time = microtime(true); /* SSL configuration */ define('_PS_SSL_PORT_', 443); /* Improve PHP configuration to prevent issues */ ini_set('default_charset', 'utf-8'); /* in dev mode - check if composer was executed */ if (is_dir(_PS_ROOT_DIR_.DIRECTORY_SEPARATOR.'admin-dev') && (!is_dir(_PS_ROOT_DIR_.DIRECTORY_SEPARATOR.'vendor') || !file_exists(_PS_ROOT_DIR_.DIRECTORY_SEPARATOR.'vendor'.DIRECTORY_SEPARATOR.'autoload.php'))) { die('Error : please install <a href="https://getcomposer.org/">composer</a>. Then run "php composer.phar install"'); } /* No settings file? goto installer... */ if (!file_exists(_PS_ROOT_DIR_.'/app/config/parameters.yml') && !file_exists(_PS_ROOT_DIR_.'/app/config/parameters.php')) { Tools::redirectToInstall(); } require_once $currentDir . DIRECTORY_SEPARATOR . 'bootstrap.php'; /* Improve PHP configuration on Windows */ if ('WIN' === strtoupper(substr(PHP_OS, 0, 3))) { Windows::improveFilesytemPerformances(); } if (defined('_PS_CREATION_DATE_')) { $creationDate = _PS_CREATION_DATE_; if (empty($creationDate)) { Tools::redirectToInstall(); } } else { Tools::redirectToInstall(); } /* Custom config made by users */ if (is_file(_PS_CUSTOM_CONFIG_FILE_)) { include_once(_PS_CUSTOM_CONFIG_FILE_); } if (_PS_DEBUG_PROFILING_) { include_once(_PS_TOOL_DIR_.'profiling/Controller.php'); include_once(_PS_TOOL_DIR_.'profiling/ObjectModel.php'); include_once(_PS_TOOL_DIR_.'profiling/Db.php'); include_once(_PS_TOOL_DIR_.'profiling/Tools.php'); } if (Tools::convertBytes(ini_get('upload_max_filesize')) < Tools::convertBytes('100M')) { ini_set('upload_max_filesize', '100M'); } if (Tools::isPHPCLI() && isset($argc) && isset($argv)) { Tools::argvToGET($argc, $argv); } /* Redefine REQUEST_URI if empty (on some webservers...) */ if (!isset($_SERVER['REQUEST_URI']) || empty($_SERVER['REQUEST_URI'])) { if (!isset($_SERVER['SCRIPT_NAME']) && isset($_SERVER['SCRIPT_FILENAME'])) { $_SERVER['SCRIPT_NAME'] = $_SERVER['SCRIPT_FILENAME']; } if (isset($_SERVER['SCRIPT_NAME'])) { if (basename($_SERVER['SCRIPT_NAME']) == 'index.php' && empty($_SERVER['QUERY_STRING'])) { $_SERVER['REQUEST_URI'] = dirname($_SERVER['SCRIPT_NAME']).'/'; } else { $_SERVER['REQUEST_URI'] = $_SERVER['SCRIPT_NAME']; if (isset($_SERVER['QUERY_STRING']) && !empty($_SERVER['QUERY_STRING'])) { $_SERVER['REQUEST_URI'] .= '?'.$_SERVER['QUERY_STRING']; } } } } /* Trying to redefine HTTP_HOST if empty (on some webservers...) */ if (!isset($_SERVER['HTTP_HOST']) || empty($_SERVER['HTTP_HOST'])) { $_SERVER['HTTP_HOST'] = @getenv('HTTP_HOST'); } $context = Context::getContext(); /* Initialize the current Shop */ try { $context->shop = Shop::initialize(); } catch (PrestaShopException $e) { $e->displayMessage(); } define('_THEME_NAME_', $context->shop->theme->getName()); define('_PARENT_THEME_NAME_', $context->shop->theme->get('parent') ?: ''); define('__PS_BASE_URI__', $context->shop->getBaseURI()); /* Include all defines related to base uri and theme name */ require_once($currentDir.'/defines_uri.inc.php'); global $_MODULES; $_MODULES = array(); define('_PS_PRICE_DISPLAY_PRECISION_', Configuration::get('PS_PRICE_DISPLAY_PRECISION')); define('_PS_PRICE_COMPUTE_PRECISION_', _PS_PRICE_DISPLAY_PRECISION_); /* Load all languages */ Language::loadLanguages(); /* Loading default country */ $default_country = new Country(Configuration::get('PS_COUNTRY_DEFAULT'), Configuration::get('PS_LANG_DEFAULT')); $context->country = $default_country; /* It is not safe to rely on the system's timezone settings, and this would generate a PHP Strict Standards notice. */ @date_default_timezone_set(Configuration::get('PS_TIMEZONE')); /* Set locales */ $locale = strtolower(Configuration::get('PS_LOCALE_LANGUAGE')).'_'.strtoupper(Configuration::get('PS_LOCALE_COUNTRY')); /* Please do not use LC_ALL here http://www.php.net/manual/fr/function.setlocale.php#25041 */ setlocale(LC_COLLATE, $locale.'.UTF-8', $locale.'.utf8'); setlocale(LC_CTYPE, $locale.'.UTF-8', $locale.'.utf8'); setlocale(LC_TIME, $locale.'.UTF-8', $locale.'.utf8'); setlocale(LC_NUMERIC, 'en_US.UTF-8', 'en_US.utf8'); /* Instantiate cookie */ $cookie_lifetime = defined('_PS_ADMIN_DIR_') ? (int)Configuration::get('PS_COOKIE_LIFETIME_BO') : (int)Configuration::get('PS_COOKIE_LIFETIME_FO'); if ($cookie_lifetime > 0) { $cookie_lifetime = time() + (max($cookie_lifetime, 1) * 3600); } if (defined('_PS_ADMIN_DIR_')) { $cookie = new Cookie('psAdmin', '', $cookie_lifetime); } else { $force_ssl = Configuration::get('PS_SSL_ENABLED') && Configuration::get('PS_SSL_ENABLED_EVERYWHERE'); if ($context->shop->getGroup()->share_order) { $cookie = new Cookie('ps-sg'.$context->shop->getGroup()->id, '', $cookie_lifetime, $context->shop->getUrlsSharedCart(), false, $force_ssl); } else { $domains = null; if ($context->shop->domain != $context->shop->domain_ssl) { $domains = array($context->shop->domain_ssl, $context->shop->domain); } $cookie = new Cookie('ps-s'.$context->shop->id, '', $cookie_lifetime, $domains, false, $force_ssl); } } $context->cookie = $cookie; /* Create employee if in BO, customer else */ if (defined('_PS_ADMIN_DIR_')) { $employee = new Employee($cookie->id_employee); $context->employee = $employee; /* Auth on shops are recached after employee assignation */ if ($employee->id_profile != _PS_ADMIN_PROFILE_) { Shop::cacheShops(true); } $cookie->id_lang = (int)$employee->id_lang; } /* if the language stored in the cookie is not available language, use default language */ if (isset($cookie->id_lang) && $cookie->id_lang) { $language = new Language($cookie->id_lang); } if (!isset($language) || !Validate::isLoadedObject($language)) { $language = new Language(Configuration::get('PS_LANG_DEFAULT')); } $context->language = $language; /* Get smarty */ require_once($currentDir.'/smarty.config.inc.php'); $context->smarty = $smarty; if (!defined('_PS_ADMIN_DIR_')) { if (isset($cookie->id_customer) && (int)$cookie->id_customer) { $customer = new Customer($cookie->id_customer); if (!Validate::isLoadedObject($customer)) { $context->cookie->logout(); } else { $customer->logged = true; if ($customer->id_lang != $context->language->id) { $customer->id_lang = $context->language->id; $customer->update(); } } } if (!isset($customer) || !Validate::isLoadedObject($customer)) { $customer = new Customer(); /* Change the default group */ if (Group::isFeatureActive()) { $customer->id_default_group = (int)Configuration::get('PS_UNIDENTIFIED_GROUP'); } } $customer->id_guest = $cookie->id_guest; $context->customer = $customer; } /* Link should also be initialized in the context here for retrocompatibility */ $https_link = (Tools::usingSecureMode() && Configuration::get('PS_SSL_ENABLED')) ? 'https://' : 'http://'; $context->link = new Link($https_link, $https_link); /** * @deprecated * USE : Configuration::get() method in order to getting the id of order status */ define('_PS_OS_CHEQUE_', Configuration::get('PS_OS_CHEQUE')); define('_PS_OS_PAYMENT_', Configuration::get('PS_OS_PAYMENT')); define('_PS_OS_PREPARATION_', Configuration::get('PS_OS_PREPARATION')); define('_PS_OS_SHIPPING_', Configuration::get('PS_OS_SHIPPING')); define('_PS_OS_DELIVERED_', Configuration::get('PS_OS_DELIVERED')); define('_PS_OS_CANCELED_', Configuration::get('PS_OS_CANCELED')); define('_PS_OS_REFUND_', Configuration::get('PS_OS_REFUND')); define('_PS_OS_ERROR_', Configuration::get('PS_OS_ERROR')); define('_PS_OS_OUTOFSTOCK_', Configuration::get('PS_OS_OUTOFSTOCK')); define('_PS_OS_OUTOFSTOCK_PAID_', Configuration::get('PS_OS_OUTOFSTOCK_PAID')); define('_PS_OS_OUTOFSTOCK_UNPAID_', Configuration::get('PS_OS_OUTOFSTOCK_UNPAID')); define('_PS_OS_BANKWIRE_', Configuration::get('PS_OS_BANKWIRE')); define('_PS_OS_PAYPAL_', Configuration::get('PS_OS_PAYPAL')); define('_PS_OS_WS_PAYMENT_', Configuration::get('PS_OS_WS_PAYMENT')); define('_PS_OS_COD_VALIDATION_', Configuration::get('PS_OS_COD_VALIDATION')); if (!defined('_MEDIA_SERVER_1_')) { define('_MEDIA_SERVER_1_', Configuration::get('PS_MEDIA_SERVER_1')); } if (!defined('_MEDIA_SERVER_2_')) { define('_MEDIA_SERVER_2_', Configuration::get('PS_MEDIA_SERVER_2')); } if (!defined('_MEDIA_SERVER_3_')) { define('_MEDIA_SERVER_3_', Configuration::get('PS_MEDIA_SERVER_3')); } Je me demande s'il y a un moyen de supprimer manuellement les modules presta, car il semble que l'un d'entre eux m'ait causé ce problème. Je n'ai plus accès au Backoffice, à cause d'une erreur 500. Link to comment Share on other sites More sharing options...
Mediacom87 Posted July 20, 2020 Share Posted July 20, 2020 Bonjour, avez-vous simplement activé le mode debug de PrestaShop ? https://www.prestatoolbox.fr/content/24-messages-erreurs-prestashop Link to comment Share on other sites More sharing options...
Ser. Posted July 20, 2020 Author Share Posted July 20, 2020 (edited) En fait, c'est justement ce que j'essaye de faire, et l'objet de ce post. Quote Remplace define('_PS_MODE_DEV_', false); par define('_PS_MODE_DEV_', true); Fonction rechercher "PS_MODE" = aucun résultat dans mon fichier (collé ci-dessus). Faut-il que je rajoute cette ligne à la main? J'ai réinstallé toute la boutique, donc j'ai de nouveau accès au Backoffice,, mais j'ignore pourquoi je n'ai pas ce PS_MODE. Je ne peux pas mettre le mode debug en continu, quand la boutique est en production, j'aurais donc besoin de savoir comment l'activer quand quelque chose flanche, et que je n'ai plus, à nouveau, accès au Backoffice. Edited July 20, 2020 by Ser. (see edit history) Link to comment Share on other sites More sharing options...
Mediacom87 Posted July 20, 2020 Share Posted July 20, 2020 Bonjour, le souci ne vient ni de Prestashop ni de votre hébergeur mais simplement de vous. comme nous le disons tous les jours dans notre métier, le souci se situe entre la chaise et le clavier. Vous ne regardez tout simplement pas le bon fichier. Link to comment Share on other sites More sharing options...
Mediacom87 Posted July 20, 2020 Share Posted July 20, 2020 et si vous ne souhaitez activer ce mode debug que pour vous et ne pas perturber vos clients, voici une astuce : https://www.mediacom87.fr/mode-debug-sauf-pour-les-clients/ 1 Link to comment Share on other sites More sharing options...
Ser. Posted July 26, 2020 Author Share Posted July 26, 2020 Grand merci pour cette astuce en or! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now