Instale-os primeiro:
sudo apt install php7.0-mcrypt && sudo apt install php7.0-mbstring
Depois, habilite-os com:
sudo a2enmod mcrypt
sudo a2enmod mbstring
Atualizar
Com base na extensa pesquisa, acredito que existe um bug que impede que seu php cli funcione bem com php mcrypt .
Fonte:
Não é possível usar o PHP extensão Mcrypt no Ubuntu 13.10 (Nginx, PHP-FPM)
php não está funcionando bem no Ubuntu 13.10 e o mcrypt está faltando no phpmyadmin
Para confirmar que mcrypt está ativado no apache, siga estas etapas:
-
Crie um arquivo
phpchamadoinfo.phpinsira este código:<?php echo phpinfo(); ?> -
Coloque o arquivo em
/var/www/htmlou sua raiz do servidor -
Acesse a partir do navegador, digamos
IP/info.phpoulocalhost/info.php -
Veja a saída e você verá que
mcrypt and mbstringestá ativadoComo você pode ver, está habilitado no apache, mas inacessível do php CLI, portanto, as mensagens de erro.
-
Para confirmar o seu funcionamento [como também tenho este problema] , fiz o seguinte:
- aplicativo prestashop instalado, e como um dos requisitos do prestashop é php mcrypt ele teria lançado um erro e se recusaria a prosseguir se
mcryptnão foi ativado no apache .
- aplicativo prestashop instalado, e como um dos requisitos do prestashop é php mcrypt ele teria lançado um erro e se recusaria a prosseguir se
A colocação simples é baseada na sua página de informações do apache exibe esses módulos como está habilitado. O erro visto é resultado do php CLI ter problemas com mcrypt que foi notado como sendo um bug. Visto em versões anteriores do php mas agora presentes em php 7