2014-07-07 39 views
11

的重装我们的服务器后,MCRYPT不再工作和PHP给出了通知使用未定义的常量MCRYPT_BLOWFISH

Use of undefined constant MCRYPT_BLOWFISH (Apache 2.4 , PHP 5.5).

PHP -m返回mcrypt的。

ls -al /etc/php5/apache2/conf.d/ 
20-mcrypt.ini -> ../../mods-available/mcrypt.ini 

cat /etc/php5/mods-available/mcrypt.ini 
; configuration for php MCrypt module 
extension=mcrypt.so 

为什么mcrypt无法识别?我该如何做这项工作?

+0

参见:http://www.madcapsule.com/blog/php-mcrypt-magento-error – GolezTrol

+0

谢谢,但不幸的是我已经试过了。我已经安装了libmcrypt4。 –

+0

我遇到了确切的错误。而该网站不起作用。从我可以告诉,MCRYPT常量不存在:/ – phazei

回答

20

我说话的时候一定会找到解决办法,呵呵。

这为我工作: mCrypt not present after Ubuntu upgrade to 13.10

去需要: 须藤php5enmod mcrypt的

即使它似乎已被启用,该固定它。

+2

“sudo php5enmod mcrypt”诀窍!对于其他读者:使用命令“sudo service apache2 restart”重新启动apache, –

2

当我尝试启用Express Paypal方法时,我遇到了这个错误。

Error: Use of undefined constant MCRYPT_BLOWFISH - assumed MCRYPT_BLOWFISH in /var/www/.../lib/Varien/Crypt/Mcrypt.php on line 56

首先,我们可以运行这个cmd以检查mcrypt运行与否:

php --ri mcrypt 

如果mcrypt未启用,我们可以用下面来启用它像其他人所说

sudo php5enmod mcrypt 

以及我们最好检查php5-mcrypt包是否安装

dpkg -l | grep php5-mcrypt 

如果安装fastcgiphp-fpm像我们虽然,我们必须重新启动php-fpm服务,apache2服务也是如此。

sudo service apache2 restart 
sudo service php-fpm restart