Brakuje rozszerzeń PHP Magento 2


10

Usiłuję skonfigurować nowe pudełko Vagrant dla rozwoju Magento 2, jednak po uruchomieniu composer installpojawiają się następujące błędy:

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.

Próbowałem już instalować każde z tych rozszerzeń za pomocą sudo apt-get install php7.0-mcryptitp., Jednak nadal pojawiają się błędy powyżej stwierdzające, że rozszerzenia, które zainstalowałem, wciąż brakuje. Zrestartowałem Apache2. Jakieś pomysły?

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

wprowadź opis zdjęcia tutaj


Czy po instalacji zrestartowałeś php-fpm / apache / nginx. Po drugie, czy jesteś pewien, że „sieć” używa PHP 7, stwórz <?php phpinfo(); stronę, aby sprawdzić i potwierdzić co
Barry Carlyon

@BarryCarlyon Zaktualizowano pytanie ze zrzutem ekranu - daj mi znać, jeśli potrzebujesz więcej informacji. Jak mogę się upewnić, że „sieć” korzysta z PHP7?
wickywills

czy możesz uruchomić php -mi zobaczyć, jaką listę zainstalowanych rozszerzeń otrzymujesz jako wynik.
Atish Goswami

Nic nie widzę „źle”, więc nie jestem pewien, dlaczego Magento twierdzi, że moduły nie są zainstalowane. PHPinfo podał poprawne wyjście, potwierdzając, że jest na php7 i ma zainstalowane te moduły.
Barry Carlyon

Odpowiedzi:


28

Przed zainstalowaniem Magento 2 upewnij się, że twój system spełnia lub przekracza następujące wymagania:

Wymagane rozszerzenia PHP:

  • PDO / MySQL
  • mbstring
  • mcrypt
  • mhash
  • simplexml
  • kędzior
  • gd2, ImageMagick 6.3.7 (lub nowszy) lub oba
  • mydło

Ale dla php 7.0 musisz użyć następnych poleceń:

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

UWAGA:

Użyj tego dla 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-soaptakże
Thaha kp

Dzięki. Dodany.
Vadym Kalin

Czy ktoś ma ten sam problem na Windows-7 Xampp? Nie mam żadnych dll
GunJan Mehta

Ponadto, sudo apt install php7.0-bcmath
Arshad Syed


0

Czasami wiersz poleceń jest skonfigurowany do używania innej konfiguracji (pliku .ini) niż z innych źródeł. Biegłeśphpinfo z internetu i powiedziałeś, że wygląda dobrze, ale co powiesz na samą linię poleceń?

W szczególności spójrz na dane wyjściowe php -i | grep '.ini'(aby zobaczyć załadowane pliki ini) i php -iogólnie (aby zobaczyć załadowane rozszerzenia).

Najwyraźniej CLI się ładuje php-cli.ini, a ta alternatywna konfiguracja nie została zaktualizowana o nowe zainstalowane rozszerzenia. Skopiuj je z php.ini, a problem zostanie rozwiązany.


-1

Korzystam z panelu WWW Centos CWP. Jest to GUI podobny do innych, które musisz kupić lub wynająć. W desce rozdzielczej CentosCWP znajduje się selektor php, który pozwala uruchamiać tuzin różnych wersji php w zależności od potrzeb. Kiedy wybieram wersję, pojawiają się pola wyboru umożliwiające dostosowanie ładowanych modułów. Domyślnie intl nie jest zaznaczone. Po sprawdzeniu i zapisaniu konfiguracji php i ponownym uruchomieniu apache zniknął błąd gotowości do braku modułu „intl”.

Ale oprócz tego złomowałem Maga 2.1 i wróciłem do ZC. Mag jest sposobem na spowolnienie, a nowy backend jest źle zaprojektowany według mojej skromnej opinii.


1
To nie daje odpowiedzi. Podaj konkretne kroki w celu rozwiązania problemu.
brentwpeterson
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.