Fatal error: Uncaught --> Smarty Compiler: Syntax error in template "eval:
Недавно решил обновится до с 2.5.2 до 2.7.0 версии, PHP Version 5.4.45, обновилось все удачно, полез в админку и бац мне вылезло:
Начал копаться и наткнулся на
Временно нашел выход из ситуации, далее буду копать глубже, но пока можно исключить этот кусок кода из меню:
1.открываем .../manager/controllers/default/header.php строка 328
2. перед
— PHP Version 5.4.45
— MODX Revolution 2.7.0-pl
Fatal error: Uncaught --> Smarty Compiler: Syntax error in template "eval:<li id="limenu-site" class="top"> <a hre..." on line 141 "});{/literal} ">Завершить все сеансы<span class="description">Завершить все сеансы работы пользователей и произвести принудительный выход из системы всех пользователей.</span>" - Unexpected " MODx.msg.confirm({ title: _('flush_sessions') ,text: _('flush_sessions_confirm') ,url: MODx.config.connector_url ,params: { action: 'security/flush' } ,listeners: { 'success': {fn:function() { location.href = './'; },scope:this} } });", expected one of: LITERALSTART , LITERALEND , LITERAL <-- thrown in .../core/model/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 141
Ну я пошел гуглить в чем проблема и наткнулся на эту тему, там проблему не решили, но в заголовке стоит «Решено».Начал копаться и наткнулся на
../manager/controllers/default/header.php
В отладке я понял что ругается на код в атрибуте тэга onclick=«bla bla bla;»MODx.msg.confirm({
title: _('flush_sessions')
,text: _('flush_sessions_confirm')
,url: MODx.config.connector_url
,params: {
action: 'security/flush'
}
,listeners: {
'success': {fn:function() { location.href = './'; },scope:this}
}
});
Синтаксис верен литеры стоят, но все равно ругается на }Временно нашел выход из ситуации, далее буду копать глубже, но пока можно исключить этот кусок кода из меню:
1.открываем .../manager/controllers/default/header.php строка 328
2. перед
$attributes .= ' onclick="{literal} '.str_replace('"','\'',$menu['handler']).'{/literal} "';
добавить if($menu["id"] == 'flush_sessions'){
$menu['handler'] = "";
}
Итогif($menu["id"] == 'flush_sessions'){
$menu['handler'] = "";
}
$attributes .= ' onclick="{literal} '.str_replace('"','\'',$menu['handler']).'{/literal} "';
Админка заработала— PHP Version 5.4.45
— MODX Revolution 2.7.0-pl
Поблагодарить автора
Отправить деньги
Комментарии: 23
Вы не первый, кто жалуется на версию 2.7.0 — поэтому от обновления я пока воздержусь. До версии 2.7.2, например…
Обновил до 2.7 32 сайта, никто не жалуется.
А как обновляете?
При помощи отдельных компонентов? Опишите процедуру, пожалуйста.
После нахождения уязвимости в 2,6,4 я обновил около 30 своих сайтов до версии 2,6,5 при помощи upgradeMODX без проблем. Причем некоторые версии были очень старыми.
А вот при попытке обновить с 2,6,5 до 2,7,0 каждый второй сайт «ложится полностью» — белый экран у админки и у фронтенда.
При помощи отдельных компонентов? Опишите процедуру, пожалуйста.
После нахождения уязвимости в 2,6,4 я обновил около 30 своих сайтов до версии 2,6,5 при помощи upgradeMODX без проблем. Причем некоторые версии были очень старыми.
А вот при попытке обновить с 2,6,5 до 2,7,0 каждый второй сайт «ложится полностью» — белый экран у админки и у фронтенда.
В логах что пишет?
Все сайты на 30 разных серверах и смотреть логи каждого из сервера я не стал.
Был бы это 1-3 сайта, то был бы смысл.
Я считаю, что обновление это — улучшение, а если оно приводит к таким проблемам, то ну его.
Если найду свободное время (ха ха) то может и попробую еще раз. А может и нет. Поглядим)
Потому что приводить в полную негодность рабочий сайт на продакшене, для того чтобы потом лезть в логи и искать в чем же проблема — как-то неправильно.
Был бы это 1-3 сайта, то был бы смысл.
Я считаю, что обновление это — улучшение, а если оно приводит к таким проблемам, то ну его.
Если найду свободное время (ха ха) то может и попробую еще раз. А может и нет. Поглядим)
Потому что приводить в полную негодность рабочий сайт на продакшене, для того чтобы потом лезть в логи и искать в чем же проблема — как-то неправильно.
Админка может ложиться из за UpgradeModx, на нескольких сайтах было подобное, в первую очередь стоит обновлять компоненты до последних версий, а после уже движок.
UpgradeMODX 2.0.3-plОтчего может ложиться фронт после обновления немного непонятно. Обновил больше уже больше 50 сайтов через simpleUpdater, причём на совершенно разных хостингах, никаких проблем не возникло.
Fix bug with possible 500 error in PHP 5
Вы правы наверное, насчет обновления компонентов.
Но могу сказать о себе — я обновляю компоненты только на тех сайтах, которые сделал от начала до конца сам. Но к сожалению, мы берем на обслуживание и сайты, которые прошли через 20 рук и кто там что чудил — сложно даже представить.
очень много раз сталкивался с тем, что обновление компонентов на таких сайтах приводило к ужасным проблемам, потому что разработчиками правились файлы компонентов напрямую, искажалась логика работы и так далее и соответственно обновление все это стирает и сайт полностью не работает.
Но могу сказать о себе — я обновляю компоненты только на тех сайтах, которые сделал от начала до конца сам. Но к сожалению, мы берем на обслуживание и сайты, которые прошли через 20 рук и кто там что чудил — сложно даже представить.
очень много раз сталкивался с тем, что обновление компонентов на таких сайтах приводило к ужасным проблемам, потому что разработчиками правились файлы компонентов напрямую, искажалась логика работы и так далее и соответственно обновление все это стирает и сайт полностью не работает.
Это сообщение было удалено
Это сообщение было удалено
Это сообщение было удалено
Это сообщение было удалено
Это сообщение было удалено
Это сообщение было удалено
Это сообщение было удалено
2.7.2 не будет =).
2.7 => 2.7.1 => 3.x
2.7 => 2.7.1 => 3.x
А разве 2.7.0 работает на php 5.4? Если есть возможность, обновите версию php хотя бы до 5.6, а лучше до 7. Возможно, поможет.
Работает на 5.4, обновить возможности нет, тк сервер государственный, а там на мой вопрос об обновлениях, сказали что это опасно для других ресурсов. Вот и пришлось костыль вставлять.
modx.com/download
Внизу написаны минимальные требования
Внизу написаны минимальные требования
Minimum Recommended PHP Latest 5.5.x
тяжело конечно с госами… но понимайте, что в будущем(может через пол года) уже расходится будут и костыли могут не помочь.
@vectorserver Перенесите данный пост из Готовых решений в Вопросы!
С чего ради?
Сорри, не дочитал =)
СПАСИБИЩЕ, добрый человек!!! Реально помогло.
Добавлю и свои 5 копеек.
Вариант, указанный в качестве временного решения конечно работает, но в моём случае помогло выключение описания пунктов верхнего меню.
Параметр topmenu_show_descriptions
В описании какого именно пункта скрывается проблема я не выяснял.
Вариант, указанный в качестве временного решения конечно работает, но в моём случае помогло выключение описания пунктов верхнего меню.
Параметр topmenu_show_descriptions
В описании какого именно пункта скрывается проблема я не выяснял.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.