Maison  >  Article  >  développement back-end  >  Comment installer l'extension mcrypt dans php7.2/php7.3 ?

Comment installer l'extension mcrypt dans php7.2/php7.3 ?

藏色散人
藏色散人original
2019-03-27 10:10:5813506parcourir

mcrypt est une bibliothèque d'extension de support de chiffrement importante en PHP. Cette bibliothèque n'est pas activée par défaut dans l'environnement Linux. Dans l'environnement fenêtre, PHP>=5.3, l'extension mcrypt est activée par défaut. L'extension mcrypt est une interface vers la bibliothèque de chiffrement mcrypt. Cette extension est utile pour permettre au code PHP qui utilise mcrypt de s'exécuter sur PHP 7.2+.

Comment installer l'extension mcrypt dans php7.2/php7.3 ?

Le principal problème de l'extension mcrypt est qu'elle est basée sur libmcrypt, qui n'a pas été développée depuis 2007. Par conséquent, même si libmcrypt est toujours utilisé, les problèmes de sécurité de la bibliothèque sont devenus une préoccupation pour de nombreux administrateurs système en raison d'un manque de développement et de maintenance appropriés.

En raison de la fin du développement de l'extension mcrypt, l'extension a également été supprimée de PHP 7.2 et déplacée vers un référentiel PECL non officiel. Cependant, vous pouvez toujours trouver l'extension mcrypt de PHP 5.4 à PHP 7.1. PHP 7.2 a été publié, mais il n'inclut pas l'extension mcrypt. Pour PHP 7.2+, PHP utilise libsodium comme bibliothèque de chiffrement.

Pour installer l'extension mcrypt sur PHP 7.2, exécutez la commande suivante en tant qu'utilisateur root du serveur :

Vérifiez les versions php et pecl

php -v
pecl version

Si votre php n'est pas 7.2, utilisez /usr/bin/php7.2 au lieu de la commande php.

Installer l'extension mcrypt

Mcrypt Extension PECL

sudo apt-get -y install gcc make autoconf libc-dev pkg-config
sudo apt-get -y install libmcrypt-dev
sudo pecl install mcrypt-1.0.1

Lorsque vous voyez l'invite

libmcrypt prefix? [autodetect] :

Appuyez sur [Entrée] pour détecter automatiquement.

Après avoir installé avec succès mcrypt via pecl, vous devez ajouter l'extension mcrypt.so au php.ini.

Le résultat ressemblera à ceci :

...
Build process completed successfully
Installing '/usr/lib/php/20170718/mcrypt.so'    ---->   this is our path to mcrypt extension lib
install ok: channel://pecl.php.net/mcrypt-1.0.1
configuration option "php_ini" is not set to php.ini location
You should add "extension=mcrypt.so" to php.ini

Récupérez le chemin d'installation et ajoutez-le à la configuration php.ini cli et apache2.

sudo bash -c "echo extension=/usr/lib/php/20170718/mcrypt.so > /etc/php/7.2/cli/conf.d/mcrypt.ini"
sudo bash -c "echo extension=/usr/lib/php/20170718/mcrypt.so > /etc/php/7.2/apache2/conf.d/mcrypt.ini"

Vérifiez que l'extension est installée

Exécutez la commande :

php -i | grep "mcrypt"

Le résultat ressemblera à ceci :

/etc/php/7.2/cli/conf.d/mcrypt.ini
Registered Stream Filters => zlib.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk, convert.iconv.*, mcrypt.*, mdecrypt.*
mcrypt
mcrypt support => enabled
mcrypt_filter support => enabled
mcrypt.algorithms_dir => no value => no value
mcrypt.modes_dir => no value => no value

FAQ

Q : J'ai vu le message d'erreur : ERREUR : 'phpize' a échoué

A : Vous pouvez installer php7.2-dev apt -get install php7.2-dev

Q : Quelle est la solution pour installer PHP 7.1 avec des paramètres élevés sur MacOS/OSX ?

Réponse : vous pouvez utiliser macports, puis vous pouvez installer sudo port install php71-mcrypt

Recommandations associées : "Tutoriel PHP"

Ceci article Cet article explique comment installer l'extension mcrypt dans php7.2/php7.3. J'espère qu'il sera utile aux amis dans le besoin !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn