web-dev-qa-db-fra.com

PHP7 Laravel Mcrypt

Puisque Laravel4 nécessite l’extension mcrypt, et que PHP7 ne semble pas avoir l’extension mcrypt, existe-t-il une solution de contournement pour que cela fonctionne?

39
Bishal Paudel

Eu le même problème - PHP7 manquant mcrypt.

Cela a fonctionné pour moi. Lorsque vous y êtes invité, conservez les fichiers de configuration locaux PHP.

Sudo apt-get update
Sudo apt-get install mcrypt php7.0-mcrypt
Sudo apt-get upgrade

Redémarrez FPM (ou Apache ou NGINX, etc.) après l'installation.

83
Ryderpro

Je suis sur Mac et avec laravel le valet que j'ai résolu avec ceci:

brasser installer php70-mcrypt

28
carlituxman

Même si vous activez mcrypt dans php.ini, ce problème peut se produire. Essayez les étapes suivantes.

Sudo apt-get update
Sudo apt-get install mcrypt php7.0-mcrypt

Je travaille dans Ubuntu 16.04 et les commandes suivantes m'ont également aidé.

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
13
Hemantha

Sur Ubuntu: Selon launchpad.net , le paquetage pour mcrypt s'appelle php7.0-mcrypt.

Sudo apt-get install php7.0-mcrypt à installer

8
Sorin

Ouvrez le terminal avec Ctrl + Alt + T et exécutez les commandes suivantes pour PHP7.0 sur Ubuntu 16.4

 Sudo apt-get install mcrypt php7.0-mcrypt 
 Service Sudo Apache2 redémarrer 
4
Behind Methods

php7 a mcrypt, vous pouvez l'activer dans php.ini et tout fonctionnera correctement.

3
fico7489

fait comme ça:

  1. wget http://jp2.php.net/distributions/php-7.0.3.tar.gz
  2. tar zxf php-7.0.3.tar.gz
  3. cd php-7.0.3/ext/mcrypt
  4. /php7-path/bin/phpize _ (quand une erreur telle que configure: error: mcrypt.h not found. Please reinstall libmcrypt courir apt-get install libmcrypt-dev)
  5. ./configure --with-php-config=/php7-path/bin/php-config
  6. (Sudo) make && make install. Ceci installera le mcrypt.so dans php-7.0.3/ext/mcrypt/modules
  7. cp au /usr/lib/php/20151012/ quel est le répertoire des extensions partagées
  8. créer un mcrypt.ini dans /etc/php/mods-available/ écrire comme extension=mcrypt.so
  9. créer un lien vers ceci tel que Sudo ln -s /etc/php/mods-available/mcrypt.ini 20-mcrypt.ini dans /etc/php/7.0/fpm/conf.d
  10. créer un lien vers ceci tel que Sudo ln -s /etc/php/mods-available/mcrypt.ini 20-mcrypt.ini dans /etc/php/7.0/cli/conf.d
  11. Sudo service nginx restart
  12. Sudo service php7.0-fpm restart
  13. oui, ça l'est.
2
devqin

J'utilise, Dotdeb , un référentiel supplémentaire fournissant toutes sortes de jouets sympas pour vos serveurs Debian tels que Nginx, PHP, MySQL, Redis, etc.

  1. Mettez à jour votre sources.list

    deb http://packages.dotdeb.org {distribution} all 
    deb-src http://packages.dotdeb.org {distribution} all
    
  2. Clés GnuPG

    wget https://www.dotdeb.org/dotdeb.gpg
    Sudo apt-key add dotdeb.gpg
    
  3. Mettre à jour apt & construire quelque chose d'incroyable.

    Sudo apt-get update
    
1
joshuamabina

PHP7 contient l'extension mcrypt en interne (source-path/ext/mcrypt/). Mais cela dépend du logiciel Libmcrypt.

Étape 1.

Téléchargez libmcrypt-x.x.tar.gz depuis http://mcrypt.sourceforge.net/ et construisez-le.

cd libmcrypt-x.x
./configure
make
make install

Étape 2.

Reconstruisez PHP7 à partir des sources et ajoutez --with-mcrypt option.

./configure ... --with-mcrypt

Autre moyen sans reconstruire 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

Redémarrer php

1
eaglewu