◄ Помощь ► Magento 2

Всем привет. вопрос - при регистрации клиента - белый экран - в логи ничего не пишет, клиент не создан и ссылка Для просмотра ссылки Войди или Зарегистрируйся
нахожусь в dev пежиме, аналогично, белый экран если создаю клиента с backendа

Попробуй отдэбажить иксдєбагом на этом контроллере. Пройдись по точкам, что говорит????
 
Добавь на всякий случай в index.php после use

error_reporting(E_ALL);
ini_set('display_errors', 1);

также см., есть ли что-то в

var/log/exception.log
var/log/debug.log

/account/createpost/ - это акшн сохранения клиента
при апгрейде на 2.2 у меня также не сохранялся клиент, потому что в старом темплейте не было CSRF-ключа
возможно, дело в этом

Если в теме переопределяется темплейт \Magento_Customer\templates\form\register.phtml
там должна быть эта строчка
<?= $block->getBlockHtml('formkey'); ?>

Для наглядности, сравни оригинальный темплейт из vendor

\vendor\magento\module-customer\view\frontend\templates\form\register.phtml
и кастомный темплейт из темы

если CSRF-ключ отсутствует, добавь сразу после открывающего тега form, как в маджентовском исходнике

p.s. проглядел, что речь про админку
 
Последнее редактирование:
Добавь на всякий случай в index.php после use

error_reporting(E_ALL);
ini_set('display_errors', 1);

также см., есть ли что-то в

var/log/exception.log
var/log/debug.log

/account/createpost/ - это акшн сохранения клиента
при апгрейде на 2.2 у меня также не сохранялся клиент, потому что в старом темплейте не было CSRF-ключа
возможно, дело в этом

Если в теме переопределяется темплейт \Magento_Customer\templates\form\register.phtml
там должна быть эта строчка
<?= $block->getBlockHtml('formkey'); ?>

Для наглядности, сравни оригинальный темплейт из vendor

\vendor\magento\module-customer\view\frontend\templates\form\register.phtml
и кастомный темплейт из темы

если CSRF-ключ отсутствует, добавь сразу после открывающего тега form, как в маджентовском исходнике

p.s. проглядел, что речь про админку
Проблема в модуле Reward Point от мирасвита, отключаю - все ок. но без этого модуля - никуда

Проблема в модуле Reward Point от мирасвита, отключаю - все ок. но без этого модуля - никуда
вот лог ошибки веб сервера
Stack trace:
#0 /home/admin/web/site.com/public_html/vendor/magento/framework/Event/Invoker/InvokerDefault.php(72:( Mirasvit\Rewards\Observer\BehaviorCustomerRegisterSuccess->execute(Object(Magento\Framework\Event\Observer))
#1 /home/admin/web/site.com/public_html/vendor/magento/framework/Event/Invoker/InvokerDefault.php(60:( Magento\Framework\Event\Invoker\InvokerDefault->_callObserverMethod(Object(Mirasvit\Rewards\Observer\BehaviorCustomerRegisterSuccess), Object(Magento\Framework\Event\Observer))
#2 /home/admin/web/site.com/public_html/vendor/magento/framework/Event/Manager.php(66:( Magento\Framework\Event\Invoker\InvokerDefault->dispatch(Array, Object(Magento\Framework\Event\Observer))
#3 /home/admin/web/site.com/public_html/generated/code/Magento/Framework/Event/Manager/P" while reading response header from upstream, client: 176.36.116.152, server: site.com, request: "POST /customer/account/createpost/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:9001", host: "site.com", referrer: "Для просмотра ссылки Войди или Зарегистрируйся"
2017/12/17 12:25:10 [error] 41259#41259: *5251 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught Error: Call to a member function getId() on null in /home/admin/web/site.com/public_html/app/code/Mirasvit/Rewards/Observer/BehaviorCustomerRegisterSuccess.php:64
Stack trace:
#0 /home/admin/web/site.com/public_html/vendor/magento/framework/Event/Invoker/InvokerDefault.php(72:( Mirasvit\Rewards\Observer\BehaviorCustomerRegisterSuccess->execute(Object(Magento\Framework\Event\Observer))
#1 /home/admin/web/site.com/public_html/vendor/magento/framework/Event/Invoker/InvokerDefault.php(60:( Magento\Framework\Event\Invoker\InvokerDefault->_callObserverMethod(Object(Mirasvit\Rewards\Observer\BehaviorCustomerRegisterSuccess), Object(Magento\Framework\Event\Observer))
#2 /home/admin/web/site.com/public_html/vendor/magento/framework/Event/Manager.php(66:( Magento\Framework\Event\Invoker\InvokerDefault->dispatch(Array, Object(Magento\Framework\Event\Observer))
#3 /home/admin/web/site.com/public_html/generated/code/Magento/Framework/Event/Manager/P" while reading response header from upstream, client: 176.36.116.152, server: site.com, request: "POST /customer/account/createpost/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:9001", host: "site.com", referrer: "Для просмотра ссылки Войди или Зарегистрируйся"
 
Последнее редактирование модератором:
не могу сказать на гите его не нашел

но по дампу - мирасвит вешает обработчик на событие успешной регистрации
нужно ковырять InvokerDefault со строки 72
а само сообщение об ошибке ?

p.s сорри, вижу

p.p.s
на строке 72 ищи объект, который достает id. что-то вроде этого

someObject->getId()

далее проверяй инъекцию этого объекта в класс
далее может быть что угодно

это нужно уже код разбирать
 
Последнее редактирование:
не могу сказать на гите его не нашел

но по дампу - мирасвит вешает обработчик на событие успешной регистрации
нужно ковырять InvokerDefault со строки 72
а само сообщение об ошибке ?

p.s сорри, вижу

p.p.s
на строке 72 ищи объект, который достает id. что-то вроде этого

someObject->getId()

далее проверяй инъекцию этого объекта в класс
далее может быть что угодно

это нужно уже код разбирать
при пустом Id не происходит обработка,отправляет в исключения ,
решается добавлением условия "!" или группой условий к запрашиваемому объекту
 
После обновления с версии 2.1.9 на 2.2.0 стала наблюдаться задержка загрузки страницы, если обновить кэш, первое время нет задержек, а спустя пару часов снова появляется пауза в 2 секунды. Есть идеи как исправить?

если очень быстро решить вопрос, попробуй по крону очищать кеш каждые 1,5 часа ну и искать причину в последствии
А вы сразу на Production режим ставите? У меня есть мысль, что с версии 2.2 уже принцип кэша изменился и теперь, чтобы работало без тормозов нужно обязательно переключить режим на Production.
 
Последнее редактирование модератором:
После обновления с версии 2.1.9 на 2.2.0 стала наблюдаться задержка загрузки страницы, если обновить кэш, первое время нет задержек, а спустя пару часов снова появляется пауза в 2 секунды. Есть идеи как исправить?
если очень быстро решить вопрос, попробуй по крону очищать кеш каждые 1,5 часа ну и искать причину в последствии
 
После обновления с версии 2.1.9 на 2.2.0 стала наблюдаться задержка загрузки страницы, если обновить кэш, первое время нет задержек, а спустя пару часов снова появляется пауза в 2 секунды. Есть идеи как исправить?

Поменялись настройки varnish и nginx - желательно обновить
В корне pub появился файл heath_check.php , который мониторит доступность страницы.
Если страница недоступна/ошибка сервера, varnish отдаст кеш давности до трех дней.
Для просмотра ссылки Войди или Зарегистрируйся

По ощущениям само кеширование стало быстрее

А профайлер браузера что говорит? задержка точно на сервере?

А диск ссд ? может закешированное с диска медленно грузится ?

ps Ваниш то используется ? )
 
Последнее редактирование модератором:
Поменялись настройки varnish и nginx - желательно обновить
В корне pub появился файл heath_check.php , который мониторит доступность страницы.
Если страница недоступна/ошибка сервера, varnish отдаст кеш давности до трех дней.
Для просмотра ссылки Войди или Зарегистрируйся

По ощущениям само кеширование стало быстрее

А профайлер браузера что говорит? задержка точно на сервере?
Пробовал не через обновление, а установить с нуля версию 2.2, страница подвисает на 2 секунды, а потом грузится, эта задержка фиксируется и в сервисах проверки скорости. Но стоит обновить кэш, это пропадает на пару часов. В браузере показывает 3.85 с.

А диск ссд ? может закешированное с диска медленно грузится ?
Диск ссд. Почему спрашиваю, ранняя версия работала корректно и загрузка была 0,2 секунды, а тут с кэшом что-то, почему-то через пару часов начинает тупить загрузка страницы. Режим стоит default. Если кэш обновить, то сразу страница быстро грузится первое время.
 
Последнее редактирование модератором:
Дефолт лучше убрать. Он вроде бы вообще как режим демки.
Переводи в продакшн на продакшене. Крон - обязательно. И ваниш. И будет быстро
Когда начинает тупить проверь также в консоли статусы реиндексации и кеша:

magento cache:status
magento indexer:status

p.s. Да, и еще в 2.2. в продакшене и возможно в дефолте есть отвратный баг с логом крона
Лог переполняется и подвешивает MySQL и проц. сервера.

Для просмотра ссылки Войди или Зарегистрируйся

Проверь таблицу cron_schedule
Если там несколько сотен тысяч записей, может дело в этом
 
Последнее редактирование:
Назад
Сверху