Приветствую!
Зашел сегодня утром в админку, а там
Fatal error: Uncaught exception 'InvalidArgumentException' with message 'Identifier "view" is not defined.' in /var/www/html/technoshop.pro/app/lib/vendor/pimple/pimple/src/Pimple/Container.php:95 Stack trace: #0 /var/www/html/technoshop.pro/app/functions/fn.common.php(2670): Pimple\Container->offsetGet('view') #1 /var/www/html/technoshop.pro/app/functions/fn.common.php(555): fn_get_current_mode() #2 /var/www/html/technoshop.pro/app/functions/fn.init.php(770): fn_process_cache_notifications('fgber_zbqr_jvyy...') #3 [internal function]: fn_check_cache(Array) #4 /var/www/html/technoshop.pro/app/functions/fn.init.php(938): call_user_func_array('fn_check_cache', Array) #5 /var/www/html/technoshop.pro/init.php(138): fn_init(Array) #6 /var/www/html/technoshop.pro/admin.php(25): require('/var/www/html/t...') #7 {main} thrown in /var/www/html/technoshop.pro/app/lib/vendor/pimple/pimple/src/Pimple/Container.php on line 95
Вчера все работало, хз что сломалось.
Ручная очистка кеша не помогла.
Пробовал перенастроить права на каталоги согласно мануалу для cs-cart, но результата так и нет
Напишите в поддержку хостинга, спросите не производили ли они какие-либо работы на сервере. Например, обновляли версию PHP
Временное решение: закомментировать строку /var/www/html/app/functions/fn.common.php:2670.
n7e
4
в чем может быть проблема?
у меня такая же ситуация, у меня развернута brainyCP так что вмешательство чье либо исключено.
app/functions/fn.common.php
ошибkа на этих строчках:
1736 Tygh::$app['view']->assign($prefix . 'time_from', $time_from);
1737 Tygh::$app['view']->assign($prefix . 'time_to', $time_to);
Вдруг неделю назад само перестало работать.
Конкретно запуск через CRON
Команда выполнена.
PHP
Fatal error: Uncaught Pimple\Exception\UnknownIdentifierException: Identifier "view" is not defined. in /sites/testsite.ru/app/lib/vendor/pimple/pimple/src/Pimple/Container.php:101 Stack trace:
#0 /sites/testsite.ru/app/functions/fn.common.php(1736): Pimple\Container->offsetGet('view')
#1 /sites/testsite.ru/app/functions/fn.log.php(289): fn_create_periods(Array)
#2 /sites/testsite.ru/app/Tygh/Shippings/RealtimeServices.php(274): fn_get_logs(Array)
#3 /sites/testsite.ru/app/Tygh/Shippings/RealtimeServices.php(183): Tygh\Shippings\RealtimeServices::sendShippingErrorMessage(0, Array)
#4 /sites/testsite.ru/app/Tygh/Shippings/RealtimeServices.php(164): Tygh\Shippings\RealtimeServices::multithreadingCallback(Array, 0)
#5 /sites/testsite.ru/app/Tygh/Shippings/Shippings.php(843): Tygh\Shippings\RealtimeServices::getRates()
#6 /sites/testsite.ru/app/Tygh/Shippings/Shippings.php(642): Tygh\Shippings\Shippings::_calculateRealTimeRates(Array)
#7 /sites/testsite.ru/app/functions/fn.cart.php(3716): Tygh\Shippings\Shippings::ca in /sites/testsite.ru/app/lib/vendor/pimple/pimple/src/Pimple/Container.php on line 101
Fatal error: Uncaught Pimple\Exception\UnknownIdentifierException: Identifier "view" is not defined. in /sites/testsite.ru/app/lib/vendor/pimple/pimple/src/Pimple/Container.php:101 Stack trace:
#0 /sites/testsite.ru/app/functions/fn.common.php(1736): Pimple\Container->offsetGet('view')
#1 /sites/testsite.ru/app/functions/fn.log.php(289): fn_create_periods(Array)
#2 /sites/testsite.ru/app/Tygh/Shippings/RealtimeServices.php(274): fn_get_logs(Array)
#3 /sites/testsite.ru/app/Tygh/Shippings/RealtimeServices.php(183): Tygh\Shippings\RealtimeServices::sendShippingErrorMessage(0, Array)
#4 /sites/testsite.ru/app/Tygh/Shippings/RealtimeServices.php(164): Tygh\Shippings\RealtimeServices::multithreadingCallback(Array, 0)
#5 /sites/testsite.ru/app/Tygh/Shippings/Shippings.php(843): Tygh\Shippings\RealtimeServices::getRates()
#6 /sites/testsite.ru/app/Tygh/Shippings/Shippings.php(642): Tygh\Shippings\Shippings::_calculateRealTimeRates(Array)
#7 /sites/testsite.ru/app/functions/fn.cart.php(3716): Tygh\Shippings\Shippings::ca in /sites/testsite.ru/app/lib/vendor/pimple/pimple/src/Pimple/Container.php on line 101
В общем:
Проблема проста. У Вас при запуске через крон карт не инициализирует объект шаблонизатора (тот самый view)
Попробуйте просто добавить проверку
if (!empty(Tygh::$app['view'])) { *тут код с обращением к этому идентификатору контейнера* }
Писал с телефона, могут быть опечатки с кавычками и тп, но Вы поняли.
1 лайк