Неустранимая ошибка установки Magento 2 - невозможно создать интерфейс


18

Я установил новый Magento 2.1 через командную строку и всегда получаю одну и ту же фатальную ошибку при попытке получить доступ к веб-интерфейсу или бэкэнду.

Неустранимая ошибка: необработанная ошибка: невозможно создать экземпляр интерфейса Magento \ Framework \ App \ Config \ Scope \ ReaderPoolInterface

Кто-нибудь испытывал то же самое? Я нашел некоторые ресурсы, но без реальной помощи.

Обновление Я удалил var / di и var / generation и установил его в режим разработчика

Fatal error: Uncaught Error: Cannot instantiate interface Magento\Framework\App\Config\Scope\ReaderPoolInterface in /shop/build/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php:73 Stack trace: #0 
/shop/build/vendor/magento/framework/ObjectManager/ObjectManager.php(71): Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create('Magento\\Framewo...') #1 
/shop/build/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(126): Magento\Framework\ObjectManager\ObjectManager->get('Magento\\Framewo...') #2 
/shop/build/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(53): Magento\Framework\ObjectManager\Factory\AbstractFactory->resolveArgument(Array, 'Magento\\Framewo...', NULL, 'readerPool', 'Magento\\Framewo...') #3 
/shop/build/vendor/magento/framework/ObjectManager/Factory/Dynamic/Develo in /shop/build/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php on line 73

Вы пытались удалить var / generation var / cache и перейти в режим разработчика?
Рафаэль на цифровом пианизме

@RaphaelatDigitalPianism сделал обе неудачи
Клетцеб

Вы устанавливали какие-либо сторонние модули перед установкой Magento?
Орельен ФОКРЕТ

Ответы:


14

Если вы используете конфигурацию nginx из официального примера и запускаете Magento в режиме по умолчанию / для разработчика, такая ситуация может возникнуть, если глобальное значение корня документа установлено как

root $MAGE_ROOT/pub;

Эту проблему можно решить, установив корневой каталог Magento из каталога pub в корневой каталог index.php

root $MAGE_ROOT;

В случае Apache DocumentRootизменение значения также может исправить ситуацию. Надеюсь, это поможет.


Настройка веб-корня за пределами паба, в целом, не очень хорошая идея.
Силиконрокстар

13

Убедитесь, что intl модуля PHP установлен, очистите его var/generation(или, generation/*если вы используете Magento 2.2+) и var/cacheвключите модули Magento ( bin/magento module:enable --all), скомпилируйте DI ( bin/magento setup:di:compile), а затем повторите попытку.


Пятно на. Отключение любых модулей перед запуском setup:installили setup:upgradeпроблема
Stevie G

5

После того, как вы загрузили все файлы / создали проект через composer, вы должны настроить хранилище. Вы можете сделать это из командной строки:

php bin/magento setup:store-config:set --help

Или собираюсь: http://mystore.com/setup


1

Шаги, которые я сделал, были следующие, чтобы избавиться от этой проблемы.

Сначала я переустановил Magento совершенно новым, затем я сделал это:

  • удалены var / generation и var / cache

  • переключился в режим разработчика для перекомпиляции

И вдруг все заработало


1
режим перекомпиляции? где это
Филипп Сандер

Если вы переключитесь в режим разработки, то он перекомпилируется
Klettseb

1

У меня также есть такая проблема при попытке запустить Magento cli, как magento listв терминале. После нескольких часов я попробовал решения, но все ответы не работают для меня. получается, что di.xmlфайл потерян.

Шаги:

  • Скопируйте весь отсутствующий файл отсюда:

https://github.com/magento/magento2/tree/2.1/app/etc .

  • После этого запустите средство удаления кэша: rm -rf var/*.
  • Теперь, если вы запустите, magento listэто будет работать снова.

0

Была та же проблема, вызванная изменением кода без предварительной очистки кэша. Я вручную почистил кеш, это решило проблему.

sudo rm -rf var / cache
sudo rm -rf var / di
sudo rm -rf var / generation
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.