Faltan extensiones PHP Magento 2

10

Estoy tratando de configurar un nuevo cuadro vagabundo para el desarrollo de Magento 2, sin embargo, cuando se ejecuta composer install, recibo los siguientes errores:

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.

Ya he intentado instalar cada una de estas extensiones usando sudo apt-get install php7.0-mcryptetc., sin embargo, todavía recibo los errores anteriores que indican que todavía faltan las extensiones que he instalado. He reiniciado Apache2. ¿Algunas ideas?

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

ingrese la descripción de la imagen aquí

wickywills
fuente
Después de la instalación reinició php-fpm / apache / nginx. En segundo lugar, está seguro de que "web" está usando PHP 7, haga una <?php phpinfo(); página para verificar y confirmar qué es
Barry Carlyon
@BarryCarlyon Pregunta actualizada con una captura de pantalla: avíseme si necesita más información. ¿Cómo me aseguro de que "web" esté usando PHP7?
wickywills
puede ejecutar php -my ver qué lista de extensiones instaladas obtiene como salida.
Atish Goswami
No puedo ver nada "incorrecto", así que no estoy seguro de por qué Magento afirma que los módulos no están instalados. PHPinfo dio la salida correcta, confirmando que está en php7 y tiene esos módulos instalados.
Barry Carlyon

Respuestas:

27

Antes de instalar Magento 2, asegúrese de que su sistema cumpla o supere los siguientes requisitos:

Extensiones PHP requeridas:

  • PDO / MySQL
  • mbstring
  • mcrypt
  • mhash
  • simplexml
  • rizo
  • gd2, ImageMagick 6.3.7 (o posterior) o ambos
  • jabón

Pero para php 7.0 debes usar los siguientes comandos:

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

NOTA:

Use esto para openSUSE:

zypper install php7-gd php7-mcrypt php7-curl php7-intl php7-xsl php7-mbstring php7-openssl php7-zip php7-soap
Vadym Kalin
fuente
1
sudo apt-get install php7.0-soaptambién
Thaha kp
Gracias. Adicional.
Vadym Kalin
¿Alguien aquí con el mismo problema en Windows-7 Xampp? No tengo ningún dll
GunJan Mehta
Además, sudo apt install php7.0-bcmath
Arshad Syed
2

Prueba esto para habilitar php-curl

sudo apt-get install php7.0-curl
Sujal Patel
fuente
0

A veces, la línea de comando se configura para usar una configuración diferente (archivo .ini) de otras fuentes. Corriste phpinfodesde la web y dijiste que se veía bien, pero ¿qué tal desde la línea de comando en sí?

Específicamente, mire la salida de php -i | grep '.ini'(para ver los archivos ini cargados), y php -ien general (para ver las extensiones cargadas).

Lo mejor es que se está cargando CLI php-cli.inio algo así, y esa configuración alternativa no se actualizó con las nuevas extensiones que instaló. Copie los de php.ini, y su problema se resolverá.

Ryan Hoerr
fuente
-1

Estoy usando centos CWP webpanel. Es una GUI similar a otras que tienes que comprar o alquilar. En el panel de CentosCWP, hay un selector de php que le permite ejecutar una docena de diferentes versiones de php para satisfacer sus necesidades. Cuando selecciono una versión, hay casillas de verificación para permitirle personalizar los módulos que se cargan. Por defecto, intl no está marcado. Una vez que verifiqué y guardé la configuración de PHP y reinicié Apache, desapareció el error de preparación para el módulo "intl" perdido.

Pero aparte de eso, descarté Mage 2.1 y volví a ZC. Mage es lento y el nuevo backend está mal diseñado en mi humilde opinión.

usuario3257923
fuente
1
Esto no proporciona una respuesta. Dé pasos específicos para resolver el problema.
brentwpeterson