После обновления в административной панели белый экран — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
(не показано 20 промежуточных версий 2 участников)
Строка 1: Строка 1:
 
  [[category:Модуль Автообновления]][[Категория:Решение проблем и ошибок]]
 
  [[category:Модуль Автообновления]][[Категория:Решение проблем и ошибок]]
'''Актуально для версии 2.9'''
+
'''Актуально для версии 18.'''
 +
 
 +
== Симптомы ==
 +
Если после обновления системы Вы перешли в административную панель и увидели белый экран, прежде всего
 +
нужно включить режим дебага, для этого откройте на редактирование файл [http://dev.docs.umi-cms.ru/nastrojka_sistemy/sintaksis_configini/ config.ini], находящийся в корневой
 +
директории файлов Вашего сайта, и в секции [http://dev.docs.umi-cms.ru/nastrojka_sistemy/dostupnye_sekcii/sekciya_debug/ [debug]] установите следующие значения параметрам:
 +
 
 +
<source lang="apache">
 +
enabled = "1"
 +
show-backtrace = "1"
 +
</source>
 +
 
 +
После этого перейдите в административную панель. Если Вы увидите множественные XSLT ошибки вида:
 +
 
 +
<source lang="apache">
 +
Warning: XSLTProcessor::importStylesheet(): ^ in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.phpon line 33
 +
Warning: XSLTProcessor::importStylesheet(): compilation error: file /mnt/sdb2/home/domains/c-madgrant/htdocs/styles/skins/mac/interface/ui/navibar.xsl line 8
 +
element text in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33
 +
Warning: XSLTProcessor::importStylesheet(): xsltParseTemplateContent: xslt:text content problem in
 +
/mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33
 +
Warning: XSLTProcessor::importStylesheet(): /mnt/sdb2/home/domains/c-madgrant/htdocs/styles/skins/mac/interface/ui/site-langs.xsl:7: parser error :
 +
Entity 'site-lang-versions' not defined in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33
 +
Warning: XSLTProcessor::importStylesheet(): &site-lang-versions; in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33
 +
</source>
 +
 
 +
То данная статья Вам поможет.
 +
 
 +
== Причина ошибки ==
 +
Полученные ошибки связаны с тем, что система не смогла найти значения [http://dev.docs.umi-cms.ru/prakticheskie_primery/internacionalizaciya_sajta/internacionalizaciya_shablonov_dannyh/ языковых констант] для отображения административной панели текущей языковой версии, и из-за этого не смогли корректно отработать [http://api.docs.umi-cms.ru/razrabotka_nestandartnogo_funkcionala/kodirovanie_administrativnogo_interfejsa/struktura_shablonov/ xsl шаблоны административной панели].
 +
Такая ситуация может возникнуть, например, если у Вас в русскоязычной версии административной панели используется файл языковых констант /classes/modules/i18n.ru.php. Дело в том, что
 +
при обновлении изменяется только системный файл констант /classes/modules/i18n.php и аналогичные файлы каждого модуля.
 +
 
 +
== Решение==
 +
Для решения проблемы Вам нужно перенести все недостающие константы из файла i18n.php в i18n.ru.php и при необходимости в файлы языковых констант других версий.
 +
Узнать имена недостающих констант можно из текста ошибок, например, строка:
 +
<source lang="apache">
 +
Entity 'site-lang-versions' not defined in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33
 +
</source>
 +
говорит нам о том, что не найдена константа 'site-lang-versions'.
 +
 
 +
Задается значение констант в файлах языковых констант следующим образом:
 +
 
 +
<source lang="php">
 +
'site-lang-versions' => 'Язык сайта: ',
 +
</source>
 +
 
 +
'''Если рекомендации непонятны или не помогли — обращайтесь в [http://www.umi-cms.ru/support/ Службу Заботы].'''

Текущая версия на 12:56, 23 мая 2018

Актуально для версии 18.

Симптомы

Если после обновления системы Вы перешли в административную панель и увидели белый экран, прежде всего нужно включить режим дебага, для этого откройте на редактирование файл config.ini, находящийся в корневой директории файлов Вашего сайта, и в секции [debug] установите следующие значения параметрам:

enabled = "1"
show-backtrace = "1"

После этого перейдите в административную панель. Если Вы увидите множественные XSLT ошибки вида:

Warning: XSLTProcessor::importStylesheet(): ^ in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.phpon line 33
Warning: XSLTProcessor::importStylesheet(): compilation error: file /mnt/sdb2/home/domains/c-madgrant/htdocs/styles/skins/mac/interface/ui/navibar.xsl line 8 
element text in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33 
Warning: XSLTProcessor::importStylesheet(): xsltParseTemplateContent: xslt:text content problem in 
/mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33 
Warning: XSLTProcessor::importStylesheet(): /mnt/sdb2/home/domains/c-madgrant/htdocs/styles/skins/mac/interface/ui/site-langs.xsl:7: parser error :
Entity 'site-lang-versions' not defined in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33
Warning: XSLTProcessor::importStylesheet(): &site-lang-versions; in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33

То данная статья Вам поможет.

Причина ошибки

Полученные ошибки связаны с тем, что система не смогла найти значения языковых констант для отображения административной панели текущей языковой версии, и из-за этого не смогли корректно отработать xsl шаблоны административной панели. Такая ситуация может возникнуть, например, если у Вас в русскоязычной версии административной панели используется файл языковых констант /classes/modules/i18n.ru.php. Дело в том, что при обновлении изменяется только системный файл констант /classes/modules/i18n.php и аналогичные файлы каждого модуля.

Решение

Для решения проблемы Вам нужно перенести все недостающие константы из файла i18n.php в i18n.ru.php и при необходимости в файлы языковых констант других версий. Узнать имена недостающих констант можно из текста ошибок, например, строка:

Entity 'site-lang-versions' not defined in /mnt/sdb2/home/domains/c-madgrant/htdocs/classes/system/subsystems/umiTemplaters/types/umiTemplaterXSLT.php on line 33

говорит нам о том, что не найдена константа 'site-lang-versions'.

Задается значение констант в файлах языковых констант следующим образом:

'site-lang-versions'	=> 'Язык сайта: ',

Если рекомендации непонятны или не помогли — обращайтесь в Службу Заботы.