私のphpをバージョン5.4.13などに更新しましたが、ターミナルで私のphpのバージョンはこれを示しています
PHP 5.4.12 (cli) (built: Mar 16 2013 21:46:23)
しかし、composer install ioを実行すると、次のエラーが発生します。
The requested PHP extension ext-mcrypt * is missing from your system
とにかく、これを機能させるためにいくつかの方法を試しましたが、何もしませんでした:
私は以下を使用しました: Solution One および Solution Two 、どちらも同様のアプローチを使用しますが、エラーが表示されます。
次に、php infoテストを実行しました。これは、バージョンが5.3.15であり、mycryptがmcryptサポートを示していることを示しています有効になっています
それで私のサーバーはこのphpを使用しており、私のターミナルのサーバーは別のものを使用しています
これを修正する方法はありますか?
MACマウンテンライオンとマウンテンライオンサーバー(最新)、xcodeを使用していますが、すべての操作が最新であり、サーバーを再起動しました。
まあ、基本に戻ってMac ServerをアンインストールしてMAMPに戻っただけで、システムが2つの個別のインストールなどと競合していたため、必要な最新のアップデートとインストールがすべて実行されました
Linux(Ubuntu 14.04)でも同じエラーが発生する
Iniが存在することを確認する
/etc/php5/mods-available/mcrypt.ini
その場合は、iniへのシンボリックリンクがあることを確認してください。ディレクトリ/etc/php5/cli/conf.d
のようなもの
05-mcrypt.ini -> ../../mods-available/mcrypt.ini
Symlinkがない場合は作成します。 php5-mcrypt
拡張子をインストールした後は、シンボリックリンクはなく、iniファイルのみです。それが手動でシンボリックリンクを作成する理由です。
Sudo php5enmod mcryptを使用してmodを有効にすることができます。シンボリックリンクが作成されます。
次の解決策を試してください。
Sudo apt-get install php5-mcrypt
Sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available
Sudo php5enmod mcrypt
Sudo service Apache2 restart
幸運を、
-イリアン
私は同じ問題を抱えていました-mcryptがCLI用にインストールされているように表示されましたが、コマンドラインから欠落しています。修正するために、私は走った
#php -i
コマンドラインバージョンのphp.iniファイルの場所を見つけて追加する
extension=mcrypt.so
その後、#php -m
を実行すると、コマンドラインバージョンにインストールされているモジュールが表示され、mcryptがそこにあるはずです。そうでない場合は、「ソリューション1」と「ソリューション2」のオプションがモジュールの構築に役立つはずです。モジュールがPHPインストールのモジュール(拡張)ディレクトリ(/usr/lib/php/extensions/no-debug-non-zts-20100525/
などのディレクトリにインストールされている(またはコピーされている)ことを確認するか、場所を確認してくださいphp.iniのextensions_dir
値が指す)。