正在使用的php的不同版本

正在使用的php的不同版本,php,installation,ini,Php,Installation,Ini,我正在尝试安装magento,它不断抛出错误“必须加载PHP扩展mcrypt”。当我试图安装mcrypt时,我收到一条消息说它已经安装好了 因此,我在命令行中运行了php-v,哪个php和php-I | grep mcrypt,然后返回 PHP 5.4.23 (cli).... 及 及 所以我添加了phpinfo();模具()到我的index.php magento文件并返回 版本5.4.17 配置文件(php.ini)路径/etc 加载的配置文件/etc/php.ini 但没有提到mcryp

我正在尝试安装magento,它不断抛出错误“必须加载PHP扩展mcrypt”。当我试图安装mcrypt时,我收到一条消息说它已经安装好了

因此,我在命令行中运行了
php-v
哪个php
php-I | grep mcrypt
,然后返回

PHP 5.4.23 (cli)....

所以我添加了
phpinfo();模具()到我的index.php magento文件并返回

版本5.4.17

配置文件(php.ini)路径/etc

加载的配置文件/etc/php.ini

但没有提到mcrypt

当magento使用与命令行不同的php版本时,我读的对吗?如果是,我该如何解决这种情况

我正在运行Magento的其他安装,因此当我考虑尝试删除/etc并让Magento自动选择正确的版本时,我决定不使用它,因为我不希望其他安装停止工作。

响应您的
phpinfo()
。通过cmd,可以接收所需的其他信息。您将看到使用了哪个PHP版本以及PHP.ini的位置

打开php.ini并搜索
;php_mcrypt.dll
。删除分号并重新启动Apache

编辑:对于Linux版本:

  • apt get install php5 mcrypt
  • 服务apache2重启
    -重启Apache
如果收到“已安装”消息,您可以使用:

apt get--重新安装php5 mcrypt


确保在php.ini中删除分号:
extension=mcrypt。因此,当您说magento使用的是不同的php版本(尽管只是subversion)时,您是对的。很可能您的cli.ini与apache.ini不同


您可以尝试将extension=mcrypt.so添加到/etc/php.ini并重新启动apache

谢谢您的建议,但是添加
extension=mcrypt.so
并重新启动并不起作用。我找不到任何其他
。因此
文件,所以我将其添加到
下面;extension=php_pspell.dll;extension=php_shmop.dll
,位置会有所不同吗?我曾尝试使用
apt get install php5 mcrypt
,但我发现一个错误
命令未找到:
。我曾尝试使用自制软件安装mcrypt,但它似乎默认为
/usr/local/bin/php
,因此它告诉我mcrypt已经安装,您使用的是哪个Linux发行版<代码>apt get
是Ubuntu的。您可以尝试重新安装
mcrypt
。我使用的是Maverick版本的mac。我的问题是,当我尝试安装mcrypt时,它似乎默认为
/usr/local/bin/php
,这反过来告诉我
mcrypt
已经安装
/usr/local/bin/php
mcrypt
mcrypt support => enabled
mcrypt_filter support => enabled
mcrypt.algorithms_dir => no value => no value
mcrypt.modes_dir => no value => no value