Warning: simplexml_load_string(): parser error: Start tag expected, '<' not found

[10 ноября 2016 г.]    Российская сборка Magento 2.49.12
Magento 2: модули и услуги
#1 Александр Литвиненко
  • Группа: Клиент
  • Сообщений: 5
  • Регистрация: 11.10.2014

20.10.2014 14:39

Добрый вечер
Поставил сегодня российскую сборку на уже имеющийся магазин на Magento 1.9.0.1 как описано здесь - http://magento-forum.ru/topic/783/
Речь идёт о площадке hpdecor.ru

Сам сайт открылся нормально, но когда попытался зайти в настройки, меня выбросило на белый экран с ошибками:


Warning: simplexml_load_string(): Entity: line 20: parser error : Start tag expected, '<' not found in /home/hpdecor/public_html/includes/src/__default.php on line 44578

#0 [internal function]: mageCoreErrorHandler(2, 'simplexml_load_...', '/home/hpdecor/p...', 44578, Array)
#1 /home/hpdecor/public_html/includes/src/__default.php(44578): simplexml_load_string('loadString('loadFile('/home/hpdecor/p...')
#4 /home/hpdecor/public_html/includes/src/Mage_Adminhtml_Model_Config.php(90): Mage_Core_Model_Config->loadModulesConfiguration('system.xml')
#5 /home/hpdecor/public_html/includes/src/Mage_Adminhtml_Model_Config.php(63): Mage_Adminhtml_Model_Config->_initSectionsAndTabs()
#6 /home/hpdecor/public_html/app/code/core/Mage/Adminhtml/controllers/System/ConfigController.php(88): Mage_Adminhtml_Model_Config->getSections(NULL)
#7 /home/hpdecor/public_html/includes/src/__default.php(22532): Mage_Adminhtml_System_ConfigController->editAction()
#8 /home/hpdecor/public_html/includes/src/__default.php(39297): Mage_Core_Controller_Varien_Action->dispatch('edit')
#9 /home/hpdecor/public_html/includes/src/__default.php(38827): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#10 /home/hpdecor/public_html/includes/src/__default.php(41975): Mage_Core_Controller_Varien_Front->dispatch()
#11 /home/hpdecor/public_html/app/Mage.php(684): Mage_Core_Model_App->run(Array)
#12 /home/hpdecor/public_html/index.php(87): Mage::run('', 'store')
#13 {main}


В админ панели в раздел - настройки не возможно войти, не открывается.

#2 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

21.10.2014 00:41

Причиной данного сбоя, как следует из диагностического сообщения, является повреждение одного из не имеющих отношение к Российской сборке Magento файлов XML.
Скорей всего, данный файл является пустым, так как система говорит, что не может найти в этом файле уже самый первый тег.
Вам нужно сейчас выяснить, что это за файл.
Система пишет его имя на строке #1 диагностического сообщения, но не полностью.
Чтобы узнать имя полностью, Вы можете отключить компиляцию и поставить логирование (Mage::log) точке загрузки файла.

#3 Александр Литвиненко
  • Группа: Клиент
  • Сообщений: 5
  • Регистрация: 11.10.2014

21.10.2014 07:02

Спасибо, нашел решение проблемы.

Проблема заключалась в данном файле - app\code\core\Mage\Core\Model\Config.php

В этом файле найдите метод loadModulesConfiguration , содержащий следующий код:

foreach ($fileName as $configFile) {
$configFile = $this->getModuleDir('etc', $modName).DS.$configFile;
if ($mergeModel->loadFile($configFile)) {
$mergeToObject->extend($mergeModel, true);
}
}

Заменить на :

foreach ($fileName as $configFile) {
try {
$configFile = $this->getModuleDir('etc', $modName).DS.$configFile;
if ($mergeModel->loadFile($configFile)) {
$mergeToObject->extend($mergeModel, true);
}
} catch(Exception $e) {
Mage::log($configFile);
}
}

#4 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

21.10.2014 14:52

Править файлы ядра неправильно.
Правильно — устранить дефект стороннего повреждённого файла XML.
Также правильно было бы предварительно воспользоваться поиском по форуму.
Я ранее уже говорил в другой теме, как найти дефектный файл XML: lib/Varien/Simplexml/Config.php(510): Warning: simplexml_load_string: parser error

Более того, на форуме есть ещё и вторая инструкция, которую я давал почти 4 года назад:
Как провести диагностику сбоя «Warning: simplexml_load_string() parser error»?

#5 Александр Литвиненко
  • Группа: Клиент
  • Сообщений: 5
  • Регистрация: 11.10.2014

21.10.2014 16:15

Большое спасибо, не внимательно искал

#6 Александр Литвиненко
  • Группа: Клиент
  • Сообщений: 5
  • Регистрация: 11.10.2014

21.10.2014 19:48

Изучил, темы на которые дали ссылки.
Все откатил до своих изменений и сделал как описано. В system.log я получил сообщений:

2014-10-22T03:42:38+11:00: <?xml version="1.0"?>
<!--
/**
 * Clearandfizzy
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Academic Free License (AFL 3.0)
 * that is bundled with this package in the file LICENSE_AFL.txt.
 * It is also available through the world-wide-web at this URL:
 * http://opensource.org/licenses/afl-3.0.php
 *
 * @category    Clearandfizzy
 * @package     Clearandfizzy_EnhancedCMS
 * @copyright   Copyright (c) 2012 Clearandfizzy ltd. (http://www.clearandfizzy.com/)
 * @license     http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
 * @description This file configures the Clearandfizzy tab and any default menus in the magento admin
 */
-->

2014-10-22T03:43:50+11:00: <?xml version="1.0"?>
<!--
/**
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Open Software License (OSL 3.0)
 * that is bundled with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://opensource.org/licenses/osl-3.0.php
 *
 * @category   Soczed
 * @package    Soczed_Less
 * @copyright  Copyright (c) 2012 Soczed <magento@soczed.com> (Benoît Leulliette <benoit@soczed.com>)
 * @license    http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
 */
-->



Оба это компоненты или модули темы оформления.

После данных заголовков в найденных файлах я добавил:
<config>
</config>
но насколько корректно это

#7 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

21.10.2014 19:55

В сообщении о сбое говорится, что корневой тег отсутствует, поэтому для устранения сбоя парсеру XML в документе XML нужен произвольный корневой тег. С другой стороны, этот корневой тег должен соответствовать ожиданиям Magento. Для файлов из модульной папки etc Magento действительно ожидает корневой тег config.

#8 Александр Литвиненко
  • Группа: Клиент
  • Сообщений: 5
  • Регистрация: 11.10.2014

21.10.2014 20:56

Спасибо.

Поделиться темой: