mcrypt ist eine wichtige Erweiterungsbibliothek zur Verschlüsselungsunterstützung in PHP. Diese Bibliothek ist in einer Linux-Umgebung standardmäßig nicht aktiviert. In der Windows-Umgebung PHP>=5.3 ist die mcrypt-Erweiterung standardmäßig aktiviert. Die mcrypt-Erweiterung ist eine Schnittstelle zur mcrypt-Verschlüsselungsbibliothek. Diese Erweiterung ist nützlich, um PHP-Code, der mcrypt verwendet, auf PHP 7.2+ laufen zu lassen.
Das Hauptproblem der mcrypt-Erweiterung besteht darin, dass sie auf libmcrypt basiert, das seit 2007 nicht mehr entwickelt wurde. Obwohl libmcrypt immer noch verwendet wird, sind die Sicherheitsprobleme der Bibliothek aufgrund mangelnder ordnungsgemäßer Entwicklung und Wartung für viele Systemadministratoren in den Mittelpunkt gerückt.
Aufgrund des Entwicklungsendes der mcrypt-Erweiterung wurde die Erweiterung auch aus PHP 7.2 entfernt und in ein inoffizielles PECL-Repository verschoben. Allerdings finden Sie die mcrypt-Erweiterung weiterhin in PHP 5.4 bis PHP 7.1. PHP 7.2 wurde veröffentlicht, enthält jedoch nicht die mcrypt-Erweiterung. Für PHP 7.2+ verwendet PHP libsodium als Verschlüsselungsbibliothek.
Um die mcrypt-Erweiterung auf PHP 7.2 zu installieren, führen Sie den folgenden Befehl als Root-Benutzer des Servers aus:
PHP- und PECL-Versionen überprüfen
php -v pecl version
Wenn Ihr PHP nicht 7.2 ist, verwenden Sie /usr/bin/php7.2 anstelle des PHP-Befehls.
Mcrypt-Erweiterung installieren
Mcrypt PECL-Erweiterung
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
Wenn Sie die Eingabeaufforderung sehen
libmcrypt prefix? [autodetect] :
Drücken Sie die Eingabetaste, um die automatische Erkennung durchzuführen.
Nach der erfolgreichen Installation von mcrypt über pecl sollten Sie die Erweiterung mcrypt.so zu php.ini hinzufügen.
Die Ausgabe sieht so aus:
... 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
Besorgen Sie sich den Installationspfad und fügen Sie ihn der CLI- und Apache2-php.ini-Konfiguration hinzu.
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"
Überprüfen Sie, ob die Erweiterung installiert ist
Führen Sie den Befehl aus:
php -i | grep "mcrypt"
Die Ausgabe sieht folgendermaßen aus:
/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
F: Ich sehe die Fehlermeldung: FEHLER: 'phpize' fehlgeschlagen
A: Sie können php7.2-dev apt-get install php7.2 installieren -dev
F: Was ist die Lösung für die Installation von PHP 7.1 mit höchsten Einstellungen unter MacOS/OSX?
Antwort: Sie können Macports verwenden und dann sudo port install php71-mcrypt installieren
Verwandte Empfehlungen: „PHP-Tutorial“
Dies Artikel In diesem Artikel geht es um die Installation der mcrypt-Erweiterung in php7.2/php7.3. Ich hoffe, dass er Freunden in Not hilfreich sein wird!
Das obige ist der detaillierte Inhalt vonWie installiere ich die mcrypt-Erweiterung in php7.2/php7.3?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!