Howto Ubuntu 18.04 установить / активировать расширение PHP ext-mcrypt - PullRequest
0 голосов
/ 15 мая 2018

Я устанавливаю свежую систему Kubuntu 18.04, которая использует по умолчанию php7.2

Установка композитора для моего текущего проекта программного обеспечения выдает мне это сообщение об ошибке:

Запрошенное расширение PHP ext-mcrypt * отсутствует в вашей системе. Установите или включите расширение PHP mcrypt.

Кроме того, нет доступного php-mcrypt, и другие подобные статьи http://aryo.lecture.ub.ac.id/easy-install-php-mcrypt-extension-on-ubuntu-linux/ не помогают, поскольку аналог php-mcrypt или php7-mcrypt не существует.

Как я могу получить настройку, которая отвечает моим требованиям?

sudo apt-get install php7.2-ext-mcrypt

не находит кандидата на установку.

Есть ли разница между php 7.1 и 7.2?

неудивительно, что это тоже не помогает:

$ sudo phpenmod mcrypt
WARNING: Module mcrypt ini file doesn't exist under /etc/php/7.2/mods-available
WARNING: Module mcrypt ini file doesn't exist under /etc/php/7.2/mods-available

Ответы [ 2 ]

0 голосов
/ 17 января 2019

Сначала проверьте, присутствует ли модуль PHP mcrypt:

$ php -m | grep mcrypt

Чтобы установить модуль PHP mcrypt, нам сначала необходимо выполнить следующие предварительные условия:

sudo apt install php-dev libmcrypt-dev php-pear

Теперь мы готовыЧтобы установить модуль PHP mcrypt в нашей системе Ubuntu 18.04:

$ sudo pecl channel-update pecl.php.net
$ sudo pecl install mcrypt-1.0.1

Откройте файл /etc/php/7.2/cli/php.ini и вставьте:

extension=mcrypt.so

Все готово.В случае успеха проверка наличия модуля PHP mcrypt должна привести к следующему выводу:

$ php -m | grep mcrypt
mcrypt

Расширение mcrypt включено в PHP 5.4 до PHP 7.1.Он был удален из PHP 7.2 и перемещен в неофициальное расширение PECL, поскольку библиотека mcrypt больше не поддерживается.

Для PHP 7.2+ PHP вместо этого использует libsodium в качестве библиотеки криптографии.ServerPilot собирает PHP 7.2+ с официальным расширением libsodium.Новый код PHP должен быть написан для использования libsodium, а не mcrypt.

Как установить mcrypt на PHP 7.2 или 7.3: https://serverpilot.io/docs/how-to-install-the-php-mcrypt-extension

0 голосов
/ 16 мая 2018

Похоже, что mcrypt устарела с php7.2

Так что мне придется либо заменить его в моем программном обеспечении, либо следовать, например, этому, как его обойти: https://serverpilot.io/community/articles/how-to-install-the-php-mcrypt-extension.html

...