Немає розширень PHP для Magento 2


10

Я намагаюся налаштувати нове бродяче вікно для розробки Magento 2, однак під час роботи composer installя отримую такі помилки:

Problem 1
    - The requested PHP extension ext-gd * is missing from your system. Install or enable PHP's gd extension.
  Problem 2
    - The requested PHP extension ext-mcrypt * is missing from your system. Install or enable PHP's mcrypt extension.
  Problem 3
    - The requested PHP extension ext-curl * is missing from your system. Install or enable PHP's curl extension.
  Problem 4
    - The requested PHP extension ext-intl * is missing from your system. Install or enable PHP's intl extension.
  Problem 5
    - The requested PHP extension ext-xsl * is missing from your system. Install or enable PHP's xsl extension.
  Problem 6
    - The requested PHP extension ext-mbstring * is missing from your system. Install or enable PHP's mbstring extension.
  Problem 7
    - The requested PHP extension ext-openssl * is missing from your system. Install or enable PHP's openssl extension.
  Problem 8
    - The requested PHP extension ext-zip * is missing from your system. Install or enable PHP's zip extension.

Я вже спробував встановити кожне з цих розширень за допомогою sudo apt-get install php7.0-mcryptтощо, однак я все-таки отримую помилки вище, вказуючи, що розширення, яке я встановив, все ще відсутнє. Я перезапустив Apache2. Будь-які ідеї?

PHP -v

PHP 7.0.8 (cli) (built: Jun 26 2016 15:14:18) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies

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


Після встановлення ви перезапустили php-fpm / apache / nginx. По-друге, ви впевнені, що "web" використовує PHP 7, зробіть <?php phpinfo(); сторінку, щоб перевірити і підтвердити, що робити
Barry Carlyon

@BarryCarlyon Оновлено запитання зі скріншотом - повідомте мені, якщо вам потрібна додаткова інформація. Як переконатися, що "web" використовує PHP7?
wickywills

чи можете ви запустити php -mі побачити, який список встановленого розширення ви отримуєте як вихід.
Atish Goswami

Я не бачу нічого "неправильного", тому не знаю, чому Magento вимагає, щоб модулі не встановлені. PHPinfo дав правильний вихід, підтвердивши, що він знаходиться на php7 і встановлені ці модулі.
Баррі Карліон

Відповіді:


28

Перш ніж встановити Magento 2, переконайтесь, що ваша система відповідає або перевищує такі вимоги:

Необхідні розширення PHP:

  • PDO / MySQL
  • mbstring
  • mcrypt
  • маш
  • simplexml
  • завиток
  • gd2, ImageMagick 6.3.7 (або пізнішої версії) або те й інше
  • мило

Але для php 7.0 ви повинні використовувати наступні команди:

sudo apt-get update

sudo apt-get install php7.0-gd php7.0-mcrypt php7.0-curl php7.0-intl php7.0-xsl php7.0-mbstring php7.0-openssl php7.0-zip php7.0-soap

sudo service apache2 restart

ПРИМІТКА:

Використовуйте це для openSUSE:

zypper install php7-gd php7-mcrypt php7-curl php7-intl php7-xsl php7-mbstring php7-openssl php7-zip php7-soap

1
sudo apt-get install php7.0-soapтакож
Thaha kp

Дякую. Додано.
Вадим Калін

Хтось тут з такою ж проблемою на Windows-7 Xampp? У мене немає жодного dll
GunJan Mehta

Також, sudo apt install php7.0-bcmath
Аршад просив


0

Іноді командний рядок встановлюється для використання іншої конфігурації (.ini файл) з інших джерел. Ви бігли phpinfoз Інтернету і кажете, що це чудово, але як щодо самого командного рядка?

Зокрема, подивіться на вихід php -i | grep '.ini'(щоб побачити завантажені файли ini) та php -iзагалом (щоб побачити завантажені розширення).

Найкраще здогадується, що CLI завантажується php-cli.iniабо таке, і що альтернативна конфігурація не була оновлена ​​новими встановленими розширеннями. Скопіюйте ці документи з php.ini, і ваша проблема буде вирішена.


-1

Я використовую webpanel centos CWP. Це графічний інтерфейс, подібний до інших, який вам доведеться придбати або взяти в оренду. На інформаційній панелі CentosCWP є селектор php, який дозволяє запустити десяток різних версій php, щоб відповідати вашим потребам. Коли я вибираю версію, з’являються прапорці, які дозволять вам налаштувати модулі, які завантажуються. За замовчуванням intl не перевіряється. Після того, як я перевірив і зберег конфігурацію php та перезавантажив апаш, помилка готовності для відсутнього модуля "intl" зникла.

Але крім цього, я скрав Mage 2.1 і повернувся до ZC. На мою скромну думку Маг - це спосіб уповільнитись, а новий підхід погано розроблений.


1
Це не дає відповіді. Будь ласка, дайте конкретні кроки для вирішення проблеми.
brentwpeterson
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.