Ben Rogmans
Ben Rogmans

Reputation: 986

Use of undefined constant MCRYPT_BLOWFISH

After reinstalling our server, MCRYPT is no longer working and PHP gives the notice

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

php -m returns 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

Why is mcrypt not recognized? How can I make this work?

Upvotes: 16

Views: 24043

Answers (2)

John Yin
John Yin

Reputation: 8367

When I try to enable the Express Paypal method, I came across this error.

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

Firstly, we can run this cmd to check the mcrypt is running or not:

php --ri mcrypt

If mcrypt is not enabled, we can use the following to enable it as others mentioned

sudo php5enmod mcrypt

As well, we had better check php5-mcrypt package is installed or not

dpkg -l | grep php5-mcrypt

While if you install fastcgi and php-fpm like us, we have to restart the php-fpm service, and apache2 service as well.

sudo service apache2 restart
sudo service php-fpm restart

Upvotes: 4

phazei
phazei

Reputation: 5437

No sooner do I speak do I find a solution, heh.

This worked for me: mCrypt not present after Ubuntu upgrade to 13.10

needed to go: sudo php5enmod mcrypt

even though it appeared to already be enabled, that fixed it.

Upvotes: 23

Related Questions