Magento 2 PHP扩展丢失


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-mcryptetc 安装这些扩展中的每一个,但是我仍然收到上面指出我已安装的扩展仍然丢失的错误。我已经重新启动了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上并安装了那些模块。
Barry Carlyon

Answers:


28

在安装Magento 2之前,请确保您的系统满足或超过以下要求:

所需的PHP扩展:

  • PDO / MySQL
  • mbstring
  • 加密
  • 马什
  • 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

谢谢。添加。
Vadym Kalin

在Windows 7 Xampp上有人遇到同样的问题吗?我没有任何dll
GunJan Mehta,

此外, sudo apt install php7.0-bcmath
Arshad Syed


0

有时,命令行设置为使用其他来源的不同配置(.ini文件)。您phpinfo从网络上运行并说看起来还不错,但是从命令行本身呢?

具体来说,请查看(的输出)php -i | grep '.ini'(以查看加载的ini文件),以及php -i总体上(以查看加载的扩展名)。

最好的猜测是,CLI正在加载php-cli.ini等,并且备用配置未使用您安装的新扩展名进行更新。从中复制这些内容,即可php.ini解决您的问题。


-1

我正在使用centos CWP Webpanel。它的GUI与您必须购买或租用的其他GUI相似。在CentosCWP仪表板中,有一个php选择器,使您可以运行十二种不同的php版本以满足您的需求。当我选择一个版本时,会有复选框允许您自定义加载的模块。默认情况下,不检查intl。一旦我检查并保存了php配置并重新启动了apache,丢失“ intl”模块的就绪错误就消失了。

但除此之外,我报废了Mage 2.1,然后回到ZC。在我的拙见中,法师是放慢脚步的方式,而新的后端设计不佳。


1
这没有提供答案。请给出解决此问题的具体步骤。
brentwpeterson
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.