Настройка magento: ошибка обновления «конфигурация развертывания отсутствует»


15

Когда я пытаюсь обновить Magento 2, php bin/magento setup:upgradeя получаю

я получил

[Magento \ Setup \ Exception]
Невозможно запустить эту операцию: конфигурация развертывания отсутствует. Запустите 'magento setup: config: set --help' для параметров. Установка: обновление

[--keep-генерируется] [--magento-init-params = "..."]

Как это исправить? Обновление с помощью веб-программы обновления выдает следующие ошибки:

введите описание изображения здесь

Я попросил моего хостинг-провайдера исправить их, и они установили правильную версию php 5.6 и все расширения, рекомендованные magento, и создали работу cron, но я все еще вижу ошибку.


ОБНОВЛЕНИЕ: (из комментариев)
env.php не было там, когда я бегу, magento setup:config:setя получаю эту ошибку:

$ bin / magento setup: config: set
SQLSTATE [HY000] [2002] Нет такого файла или каталога

[InvalidArgumentException]
Проверка параметров не удалась


1
Проверьте, если <magento install dir>/app/etc/env.phpприсутствует. Это конфигурация развертывания. Если он отсутствует, выполните magento setup:config:setкоманду еще раз, чтобы создать ее.
Стив Джонсон

@SteveJohnson env.php не было там, когда я запускаю, magento setup:config:setя получаю эту ошибку pastebin.com/BDzxYGGU
Lynob

Ошибка указывает, что ваше имя пользователя базы данных Magento и пароль не совпадают. Я не уверен, что это хорошая идея запустить вашу базу данных Magento как root; Вы видели наши инструкции по установке MySQL ? Может быть, попробуйте это и посмотрите, если команда будет выполнена успешно.
Стив Джонсон

Ответы:


7

Я столкнулся с той же проблемой сегодня. Оказалось, что app/etc/env.phpпропал без вести. Это означает, что Magento еще не был установлен. Во время установки Magento он создаст этот файл, поэтому:

  • убедитесь, что app/etc/доступно для записи для пользователя magento / webuser
  • бегать bin/magento setup:install ...params...

В моем случае какой-то скрипт, который я сделал, не копировал мой env.phpфайл в app/etc/папку.

Также возможно, что файл есть, но он не доступен для чтения для пользователя / веб-пользователя Magento.


42

Это сообщение об ошибке также отображается, если ваш app/etc/config.phpотсутствует. Если app/etc/env.phpприсутствует, но вы все еще видите эту проблему, проверьте app/etc/config.php. Если его нет, Magento может создать его, запустив bin/magento module:enable --all. Это создаст файл заново. Затем попробуйте запустить bin/magento setup:upgradeснова.


1
В моем случае это была проблема, app/etc/env.phpприсутствовала, но app/etc/config.phpне была.
Нильс

У меня есть и app / etc / env.php, и app / etc / config.php, которые все еще имеют эту ошибку.
Ajwad Syed

идеальный ответ !!! сделал мой день +1 :)
SagarPPanchal

3

В моем случае я использую Magento 2 от Docker,

У меня были оба app/etc/env.phpи app/etc/config.phpфайлы. Также имел .htaccessфайл в корневой папке и все еще имел эту ошибку при выполнении любой команды magento:

Invalid configuration file: '/var/www/html/app/etc/env.php'

Потом,

  1. Я убил все работающие контейнеры с: docker kill $(docker ps -q)
  2. Удалил все остановленные контейнеры с: docker rm $(docker ps -a -q)
  3. Удалил все изображения с: docker rmi $(docker images -q)
  4. Удалены все неиспользуемые тома с: docker volume prune

4-й пункт является обязательным.

И снова установил Docker Image для Magento 2. Это сработало для меня.


3

Сначала вам нужно развернуть свой веб-сайт. Первая Проверка всех папок в файле .htaccess доступна после

php bin/magento setup:upgrade

и

php bin/magento setup:static-content:deploy

или pub> статический файл отмечен не статическая папка, поэтому создайте статическую папку и index.phpв файле Pub. index.phpне доступно, поэтому, пожалуйста, скопируйте другой проект и вставьте

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