458 Stimmen

Laravel benötigt die Mcrypt PHP-Erweiterung

Ich versuche, die migrate-Funktion in Laravel 4 auf OSX zu verwenden. Allerdings erhalte ich folgenden Fehler:

Laravel benötigt die Mcrypt PHP-Erweiterung.

Soweit ich weiß, ist sie bereits aktiviert (siehe Bild unten).

Was ist falsch und wie kann ich es beheben?

Bildbeschreibung eingeben

14voto

Theo Kouzelis Punkte 2832

Dies hat es für mich in meiner Linux Mint-Umgebung gelöst https://askubuntu.com/questions/350942/cannot-get-mcrypt-for-php5

Ich musste einen Symlink zu meiner Datei /etc/php5/conf.d/mcrypt.ini in den folgenden Ordnern /etc/php5/apache2/conf.d/mcrypt.ini und /etc/php5/cli/conf.d/mcrypt.ini erstellen

14voto

d.danailov Punkte 9178

Mein Betriebssystem ist Yosemite.

Ich löse dieses Problem, indem ich Konfigurationspfade finde:

php --ini

Beispiel-Ausgabe:

Konfigurationsdatei (php.ini) Pfad: /usr/local/etc/php/5.5
Geladene Konfigurationsdatei:         /usr/local/etc/php/5.5/php.ini
Suche nach zusätzlichen .ini-Dateien in: /usr/local/etc/php/5.5/conf.d
Zusätzlich analysierte .ini-Dateien:      (none)

Nächste Schritte:

  1. Umbenennen oder Löschen der php55 ini-Datei
  2. Symlink erstellen
  3. Apache-Server neu starten

Befehle:

mv /usr/local/etc/php/5.5/php.ini /usr/local/etc/php/5.5/php.ini.default
ln -s /etc/php.ini /usr/local/etc/php/5.5/php.ini
sudo apachectl restart

Dann können Sie Ihre php-Module überprüfen mit:

php -m

14voto

Sean Punkte 1017

Nur für Leckermauler,

yum install php-mcrypt
service httpd restart
chown -R apache:apache apppath

Vielleicht müssen Sie das Remi-Repo installieren

13voto

akyayik Punkte 664

Sie benötigen eine All-in-One-Umgebung. Sie können MAMP oder XAMPP oder andere Tools verwenden. Nach der Installation eines dieser Tools müssen Sie Ihre .bash_profile bearbeiten(erstellen) (unter der Annahme, dass Sie bash verwenden).

Oder sogar einfacher und professioneller können Sie Laravel Homestead verwenden.

Hier finden Sie einen Link zur offiziellen Dokumentation: http://laravel.com/docs/5.0/homestead

Außerdem bietet Jeffrey ein kostenloses Tutorial dazu: https://laracasts.com/series/laravel-5-fundamentals/episodes/2

Ich empfehle Ihnen, mit Homestead zu arbeiten, da Sie alle folgenden Tools vorinstallieren werden.

  • Ubuntu 14.04
  • PHP 5.6
  • HHVM
  • Nginx
  • MySQL
  • Postgres
  • Node (mit Bower, Grunt und Gulp)
  • Redis
  • Memcached
  • Beanstalkd
  • Laravel Envoy
  • Fabric + HipChat-Erweiterung

10voto

rap-2-h Punkte 26507

Für diejenigen, die heute noch hierher kommen:

Laravel benötigt keine mcrypt-Erweiterung mehr. mcrypt ist veraltet, das letzte Update von libmcrypt war 2007. Laravel 4.2 ist ebenfalls veraltet und wird nicht mehr unterstützt. Die beste (=sicherste) Lösung ist ein Update auf Laravel 9.x+ (Laravel 8.x ist immer noch in Ordnung. Aber wenn Sie ein Upgrade durchführen, dann aktualisieren Sie auf die neueste Version).

Mcrypt wurde im Juni 2015 aus Laravel entfernt: https://github.com/laravel/framework/pull/9041

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X