2016-10-31 3 views
0

Ich versuche, eine Anwendung auf einem lokalen Dev auszuführen. Umgebung auf OS X Yosemite, aber es scheitert, weil Mcrypt nicht aktiviert ist.Installieren Sie Mcrypt unter OS X Yosemite

ich mit diesem Handbuch begonnen: https://coolestguidesontheplanet.com/install-mcrypt-php-mac-osx-10-10-yosemite-development-server/

andi Trog ich finden kann jede Führung gegangen.

In meiner php.ini habe ich die Erweiterungen hinzugefügt:

; Directory in which the loadable extensions (modules) reside. 
; http://php.net/extension-dir 
; extension_dir = "./" 
; On windows: 
; extension_dir = "extension_dir=/usr/lib/php/extensions/no-debug-non-zts-20121212/mcrypt.so" 
; extension=mcrypt.so 

Wenn verwenden Sie den Befehl:

php --info | grep mcrypt\\. 


Additional .ini files parsed => /usr/local/etc/php/5.5/conf.d/ext-mcrypt.ini 
Registered Stream Filters => zlib.*, bzip2.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk, mcrypt.*, mdecrypt.* 
PHP Warning: Unknown: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in Unknown on line 0 
mcrypt.algorithms_dir => no value => no value 
mcrypt.modes_dir => no value => no value 

nicht sicher, was jetzt zu tun.

+0

Es ist am besten, nicht mcrypt zu verwenden, es ist seit fast einem Jahrzehnt Abandonware. Es ist daher veraltet und wird in PHP 7.2 aus dem Kern und in PECL entfernt. Es unterstützt nicht Standard-PKCS # 7 (bisher PKCS # 5) Padding, nur Nicht-Standard-Null-Padding, das nicht einmal mit Binärdaten verwendet werden kann. mcrypt hat viele ausstehende Bugs, die auf das Jahr 2003 zurückgehen. Stattdessen sollten Sie [defuse] (https://github.com/defuse/php-encryption) oder [RNCryptor] (https://github.com/RNCryptor) verwenden Komplettlösung, werden gepflegt und sind korrekt. – zaph

Antwort

0

Es ist einfach, wenn Sie Homebrew verwenden können. Führen Sie den folgenden Befehl von Ihrem Terminal aus.

brew install autoconf 
brew install mcrypt 

Restart Apache

sudo apachectl restart 

Sehen Sie diese answer für weitere Methoden.

+0

Hallo! Beides gibt mir "schon installiert". Meine phpinfo-Datei wird jedoch nicht mcrypt anzeigen. – Xeptor

0

Wenn Sie installiert mcrypt Homebrew verwenden und das Modul zeigt nach wie vor nicht in der phpinfo(), können Sie die folgende versuchen, die für mich (OS X Sierra) funktioniert:

Bearbeiten Sie Ihre php.ini (Sie können verwenden vi oder nano statt Atom)

sudo atom /etc/php.ini 

Fügen Sie die folgende Zeile am Ende der php.ini (Ihre encrypt Version möglicherweise unterschiedlich)

extension="/usr/local/Cellar/php56-mcrypt/5.6.29_3/mcrypt.so" 

Starten Sie apache

sudo apachectl restart