454

migrateOSX上のLaravel 4で関数を使用しようとしています。ただし、次のエラーが発生します。

Laravel requires the Mcrypt PHP extension.

私が理解している限りでは、既に有効になっています (下の画像を参照)。

何が問題で、どうすれば修正できますか?

ここに画像の説明を入力

4

22 に答える 22

344

MAMPをインストールしていますか?

ターミナルで使用which phpして、使用している PHP のバージョンを確認します。

MAMP の PHP バージョンでない場合.bash_profileは、ユーザーのホーム ディレクトリを編集または追加する必要があります。cd ~

.bash_profile、次の行を追加します。

export PATH=/Applications/MAMP/bin/php/php5.4.10/bin:$PATH

編集:まず、コマンドcd /Applications/MAMP/bin/phpを使用して、使用している MAMP の PHP バージョンを確認してから、上記の PHP バージョンに置き換えてください。

次にrestart、ターミナルで、現在使用している PHP を確認します。

そして、それは今働いているはずです。

于 2013-05-30T13:13:26.107 に答える
144

XAMPP 1.7.3とMacをお使いの方へ

  1. ターミナルに移動
  2. 入るwhich php
    • と表示されている場合は/usr/bin/php、3 に進みます。
  3. 入力しますsudo nano ~/.bash_profile(またはsudo vim ~/.bash_profile、使用方法を知っている場合)
  4. 次に、これを貼り付けますexport PATH="/Applications/XAMPP/xamppfiles/bin:$PATH"
  5. Ctrl+OEnter して保存し、Ctrl+X終了します。
  6. タイプcd ~
  7. タイプ. .bash_profile
  8. ターミナルを再起動します。
  9. を入力しwhich phpます。正しく行えば、#4 のパスと同じになるはずです。

mcrypt エラーの理由は、Mac がネイティブの php を使用しているためです。それを xampp のものに変更する必要があります。

PS Mac ユーザー向けの Laravel 4 には MAMP を使用することをお勧めします。この問題は問題なく php ファイル情報エラーとともに解決され、xampp の php バージョンは非常に古いです。

于 2013-06-19T13:26:38.170 に答える
87

OSX 上の非 MAMP または XAMPP ユーザーの場合 (homebrew がインストールされている場合):

brew install homebrew/php/php56-mcrypt

乾杯!

于 2013-11-18T03:58:30.790 に答える
47

Ubuntuを使用して、ちょうど

sudo php5enmod mcrypt

私のためにトリックをしました。CLI からのみ PHP を使用する必要があるため、Apache を再起動する必要はありません。

于 2014-06-15T19:50:11.443 に答える
26

Laravel を Apache で動作させる

PHP バージョン: PHP 5.5.9

Ubuntu のバージョン: 14.04

私はWindows上で動作するlaravelプロジェクトを持っていました。それをubuntuサーバーにコピーすると、mcryptエラーが発生し始めました。これは何時間もの試行錯誤の末

職人のコマンドを機能させる

(artisan コマンド ライン ツールの使用中に mcrypt エラーが発生した場合)

私は多くの試行錯誤を行ったので、前にphp5enmodコマンドを実行するたびにエラーメッセージが表示されました. しかし、新規インストールではエラーメッセージはありませんでした。このステップの後、職人のコマンドが機能するようになりました

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

ブラウザのエラーを修正する

(ローカルlaravelインデックスページにアクセスする際にブラウザでmcryptエラーが発生している場合)

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

php ini の動的にコンパイルされた拡張セクションの下に次の行を追加します。

extension=mcrypt.so

Apacheサーバーを再起動し、laravelキャッシュとすべての機能をパージします

于 2014-10-02T20:12:19.030 に答える
19

または、次を使用します。

sudo apt-get install php5-mcrypt

これが標準のPHPインストールで機能するかどうかはわかりません-次php 5.5.7のパッケージを使用してインストールしました:

sudo add-apt-repository ppa:ondrej/php5 
sudo apt-get update
于 2013-12-27T12:17:54.253 に答える
19

ubuntu の場合、他の手順が機能しない場合は、次の手順を試してください。

  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

それが役立つことを願っています。ありがとう !

于 2014-08-06T20:09:15.150 に答える
15

これは私のLinux Mintローカル環境で解決しましたhttps://askubuntu.com/questions/350942/cannot-get-mcrypt-for-php5

/etc/php5/apache2/conf.d/mcrypt.ini および /etc/php5/cli/conf.d フォルダー内の /etc/php5/conf.d/mcrypt.ini ファイルへのシンボリック リンクを作成する必要がありました。 /mcrypt.ini

于 2014-02-17T10:31:27.597 に答える
14

オールインワン環境が必要です。MAMP、XAMPP、またはその他のツールを使用できます。これらのツールのいずれかをインストールした後、.bash_profile を編集 (作成) する必要があります (bash を使用していると仮定します)。

または、Laravel Homestead を使用することもできます。

公式ドキュメントへのリンクは次のとおりです: http://laravel.com/docs/5.0/homestead

また、Jeffrey にはそれに関する無料のチュートリアルがあります: https://laracasts.com/series/laravel-5-fundamentals/episodes/2

以下のすべてのツールをプレインストールするので、homestead を使用することをお勧めします。

  • Ubuntu 14.04
  • PHP5.6
  • HHVM
  • ニンクス
  • MySQL
  • ポストグル
  • ノード (Bower、Grunt、および Gulp を使用)
  • レディス
  • Memcached
  • 豆の木
  • Laravel エンボイ
  • Fabric + HipChat 拡張機能
于 2015-03-02T19:31:15.883 に答える
10

@JetLaggy の拡張:

MAMP ディレクトリで .bash_profile を何度も変更しようとした後、MAMP php ディレクトリのファイル権限を変更し、「どの php」を取得して適切なディレクトリを表示することができました。問題は、「php -v」などの他の機能が機能しないことでした。

ということで、MAMPをアップデート。 http://documentation.mamp.info/en/mamp/installation/updating-mamp

これは、私の特定のセットアップのトリックでした。更新されたバージョンの PHP を反映するように PATH を調整する必要がありましたが、いったん調整すると、すべてが機能しました。

于 2013-12-10T22:44:41.970 に答える
5

Z Shell を使用している場合は、次の手順を実行します。

  1. ターミナルを開く
  2. 須藤nano ~/.zshrc
  3. これを貼り付けます。export PATH=/Applications/MAMP/bin/php/php5.6.10/bin:$PATH
  4. 保存
  5. 走る source ~/.zshrc
  6. 実行 which php- MAMP 5.6.10 パスを取得する必要があります

5.6.10 は、MAMP で設定した PHP のバージョンです。

于 2016-01-20T03:43:24.410 に答える