Résoudre le problème d'installation de l'extension php7.2.x-mcrypt

L'extension mcrypt permet d'ajouter des fonctionnalités pour chiffrer des données au langage PHP. Elle supporte différents algorithmes comme Blowfish ou encore GOST. Depuis la version 7.2 de PHP, cette extension n'est plus fournie par défaut avec l'installation du langage sur votre système d'exploitation. Les extensions Sodium et OpenSSL sont privilégiées car elles offrent davantage de sécurité dans le chiffrement des données. Si l'on souhaite utiliser quand même mcrypt, il faut suivre la procédure suivante afin d'éviter une erreur.

La première étape consiste à installer le PECL. Il s'agit d'un dépôt contenant l'ensemble des extensions du langage PHP. On y trouve donc mcrypt. Pour effectuer cette installation, vous devez ajouter le paquet dans votre distribution. Si vous travaillez sur Debian ou un de ses dérivés, comme Ubuntu, le paquet se nomme "php-pear". Sur d'autres distributions, il peut se nommer directement "php-pecl".

#Debian et dérivées
apt-get install php-pear
#Autres distributions
yum install php-pecl

Vous devez ensuite installer les fonctionnalités de chiffrement et déchiffrement sur votre système d'exploitation. Elles sont contenues dans deux paquets séparés. On peut les installer avec le gestionnaire de paquets de la distribution.

apt-get install libmcrypt-dev libreadline-dev

Il ne reste plus qu'à installer mcrypt. Pour connaître la version compatible avec votre version de PHP, rendez-vous sur le site de la PECL : https://pecl.php.net/package/mcrypt. La dernière version étant compatible avec PHP 7.2, il est possible que la ou les versions suivantes le soient également. La commande "pecl install" permet d'installer le paquet en précisant son nom suivi d'un tiret et du numéro de version.

pecl install mcrypt-1.0.2

Il ne reste plus qu'à configurer PHP pour pouvoir utiliser mcrypt. Ouvrez le fichier "php.ini". C'est dans ce fichier que l'on définit la configuration de l'environnement d'exécution de PHP. Ajoutez la ligne suivante pour activer l'extension mcrypt.

extension=mcrypt.so

Il ne vous reste plus qu'à relancer le serveur et mcrypt sera utilisable avec PHP 7.2.

PHP