Laravel4にはmcrypt
拡張機能が必要であり、PHP7にはmcrypt
拡張機能がないようですので、これを機能させるための回避策はありますか?
同じ問題がありました-PHP7にはmcryptがありません。
これは私のために働いた。要求されたら、ローカルPHP構成ファイルを保持します。
Sudo apt-get update
Sudo apt-get install mcrypt php7.0-mcrypt
Sudo apt-get upgrade
インストール後にFPM(またはApacheまたはNGINXなど)を再起動します。
私はMacでlaravel valetを使ってこれで解決しました:
php70-mcryptをインストールする
Php.iniでmcryptを有効にしても、この問題が発生する場合があります。次の手順を試してください。
Sudo apt-get update
Sudo apt-get install mcrypt php7.0-mcrypt
私はubuntu 16.04で作業しており、次のコマンドも役立ちました。
whereis php -shows the files with this name
php -v -shows the php version
which php -shows current php version that is running on the server
Ubuntuの場合: launchpad.net によると、mcryptのパッケージはphp7.0-mcryptと呼ばれます。
Sudo apt-get install php7.0-mcrypt
インストールする
Ctrl + Alt + Tでターミナルを開き、Ubuntu 16.4でPHP7.0の次のコマンドを実行します
sudo apt-get install mcrypt php7.0-mcrypt Sudo service Apache2 restart
php7にはmcryptがあり、php.iniで有効にすると、すべてが正常に機能します。
このようにします:
wget http://jp2.php.net/distributions/php-7.0.3.tar.gz
tar zxf php-7.0.3.tar.gz
cd php-7.0.3/ext/mcrypt
/php7-path/bin/phpize
(configure: error: mcrypt.h not found. Please reinstall libmcrypt
などのエラーの場合apt-get install libmcrypt-dev
を実行)./configure --with-php-config=/php7-path/bin/php-config
(Sudo) make && make install
.thisは、mcrypt.soをphp-7.0.3/ext/mcrypt/modules
にインストールします/usr/lib/php/20151012/
共有拡張機能ディレクトリとは/etc/php/mods-available/
にmcrypt.iniを作成し、extension=mcrypt.so
として書き込みますSudo ln -s /etc/php/mods-available/mcrypt.ini 20-mcrypt.ini
の/etc/php/7.0/fpm/conf.d
などのリンクを作成しますSudo ln -s /etc/php/mods-available/mcrypt.ini 20-mcrypt.ini
の/etc/php/7.0/cli/conf.d
などのリンクを作成しますSudo service nginx restart
Sudo service php7.0-fpm restart
Dotdeb を使用します。これは、Nginx、PHP、MySQL、RedisなどのDebianサーバーに最新のクールなおもちゃを提供する追加のリポジトリです。
sources.list
を更新します
deb http://packages.dotdeb.org {distribution} all
deb-src http://packages.dotdeb.org {distribution} all
GnuPGキー
wget https://www.dotdeb.org/dotdeb.gpg
Sudo apt-key add dotdeb.gpg
Aptを更新して、すばらしいものを作成します。
Sudo apt-get update
PHP7には、内部でmcrypt拡張(source-path/ext/mcrypt/
)が含まれています。しかし、それはLibmcryptソフトに依存しています。
ステップ1。
http://mcrypt.sourceforge.net/ からlibmcrypt-x.x.tar.gzをダウンロードしてビルドします。
cd libmcrypt-x.x
./configure
make
make install
ステップ2。
ソースからPHP7を再構築し、--with-mcrypt
オプションを追加します。
./configure ... --with-mcrypt
PHP7を再構築しない他の方法
cd php7-source-path/ext/mcrypt/
/php7-path/bin/phpize
./configure --with-php-config=/php7-path/bin/php-config
make && make install
echo "extension=mcrypt.so" >> /php7-path/ext/php.ini
PHPを再起動