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

38voto

Nanhe Kumar Punkte 14132

In Ubuntu (PHP-FPM, Nginx)

sudo apt-get install php5-mcrypt

Nach der Installation von php5-mcrypt

müssen Sie einen Symlink zu den Ini-Dateien in mods-available erstellen:

sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/mcrypt.ini

aktivieren:

sudo php5enmod mcrypt

php5-fpm neu starten:

sudo service php5-fpm restart

Mehr Details

25voto

Sojan Jose Punkte 3128

Laravel auf Apache zum Laufen bringen

PHP Version: PHP 5.5.9

Ubuntu Version: 14.04

Ich hatte ein funktionierendes Laravel-Projekt auf Windows. Als ich es auf den Ubuntu-Server kopierte, begann ich den Mcrypt-Fehler zu erhalten. Dies geschah nach vielen Stunden des Ausprobierens und Testens.

das artisan Befehlszeilentool zum Laufen bringen

(wenn Sie einen Mcrypt-Fehler beim Verwenden des Artisan-Befehlszeilentools haben)

Ich habe viel ausprobiert und jedes Mal, wenn ich den Befehl php5enmod vorher ausführte, erhielt ich Fehlermeldungen. Aber bei einer frischen Installation gab es keine Fehlermeldungen. Nach diesem Schritt funktionierte der Artisan-Befehl

sudo rm /etc/php5/mods-available/mcrypt.ini
sudo apt-get purge php5-mcrypt
sudo apt-get install mcrypt
sudo apt-get install php5-mcrypt
sudo php5enmod mcrypt

den Browserfehler beheben

(wenn Sie einen Mcrypt-Fehler im Browser haben, wenn Sie auf die lokale Laravel-Indexseite zugreifen)

sudo nano /etc/php5/apache2/php.ini

Fügen Sie die folgende Zeile unter dem Abschnitt der dynamisch kompilierten Erweiterungen von php.ini hinzu

extension=mcrypt.so

Starten Sie den Apache-Server neu, löschen Sie den Laravel-Cache und alles funktioniert

17voto

Prateek Choudhary Punkte 429

Für php-fpm Installationen auf Ubuntu 14.04 hat folgendes für mich funktioniert:

sudo apt-get install php5-mcrypt

Dies wird die Datei mcrypt.ini innerhalb von /etc/php5/mods-available/ erstellen

Dann

sudo php5enmod mcrypt

wird einen Symlink in erstellen: /etc/php5/fpm/conf.d/

Einfach die php-fpm-Dienste neu starten sudo service php5-fpm restart

17voto

Sagiruddin Mondal Punkte 4979

Für Ubuntu probieren Sie diese Schritte aus, wenn andere nicht funktionieren:

  1. cd ~
  2. sudo apt-get remove php5-mcrypt
  3. sudo apt-get install php5-mcrypt
  4. sudo php5enmod mcrypt
  5. sudo service apache2 restart

Ich hoffe, das wird helfen. Vielen Dank!

17voto

JoeTidee Punkte 21521

Oder verwenden Sie:

sudo apt-get install php5-mcrypt

Nicht sicher, ob dies bei Standard-PHP-Installationen funktioniert - Ich habe PHP 5.5.7 mit dem Paket von installiert :

sudo add-apt-repository ppa:ondrej/php5 
sudo apt-get update

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