Бортовой журнал Ктулху

Как проверить установлен ли mcrypt

Простой скрипт проверит есть ли на сервере установленный модуль mcrypt.

 

test mcrypt
if(function_exists("mcrypt_encrypt")) {
 echo "mcrypt is loaded!";
} else {
 echo "mcrypt isn't loaded!";
}

Еще в Ubuntu 14.04 есть такой баг что хоть mcrypt  и установлен но не работает. Для его оживления нужно сделать следующее:

sudo updatedb 
locate mcrypt.ini

Должно выдать что-то вроде:

/etc/php5/mods-available/mcrypt.ini

Далее, выполнить команду

locate mcrypt.so

Консоль выдаст что-то вроде этого:

/usr/lib/libmcrypt.so.4
/usr/lib/libmcrypt.so.4.4.8
/usr/lib/php5/20121212/mcrypt.so

Отредактировать mcrypt.ini чтобы путь к mcrypt.so выглядел примерно так:

extension=/usr/lib/php5/20121212/mcrypt.so

Также на свякий случай можно активировать расширение командой

sudo php5enmod mcrypt

Также еще нужно проверить что файлы mcrypt.ini существуют:

ls -al /etc/php5/cli/conf.d/20-mcrypt.ini
ls -al /etc/php5/apache2/conf.d/20-mcrypt.in

Если нет, создать символические ссылки на них:

sudo ln -s /etc/php5/mods-available/mcrypt.ini /etc/php5/cli/conf.d/20-mcrypt.ini
sudo ln -s /etc/php5/mods-available/mcrypt.ini /etc/php5/apache2/conf.d/20-mcrypt.ini