Como Instalar mcrypt como módulo de PHP 7.2 en Ubuntu server 18.04

PHP 7.2 es la versión estándar que se instala en Ubuntu Server 18.04 LTS y un detalle que salta a la vista es que desde php 7.1 el móculo mcrypt fue marcado como «deprecated» y no está disponible para instalarlo. Aquí te digo como instalar mcrypt como módulo de PHP 7.2 en Ubuntu Server 18.04 LTS

Como Instalar mcrypt como módulo de PHP 7.2 en Ubuntu server 18.04

Tener la versión mas reciente de Ubuntu Server para buscar tener un servicio por algunos años puede traer algunos inconvenientes, uno de ellos es que la versión 7.2 de PHP ya no incluye el módulo mcrypt y si tratas de instalar el paquete php7.2-mcrypt, simplemente te dice que ese paquete no existe.

$ sudo apt install php7.2-mcrypt
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package php7.2-mcrypt
E: Couldn't find any package by glob 'php7.2-mcrypt'
E: Couldn't find any package by regex 'php7.2-mcrypt'

Este paquete aun es utilizado por muchos scripts de PHP como Magento o Frameworks como Laravel o PhalconPHP y en algunos es un ‘requisito’ para poder usarlos.

Para instalar este módulo puedes seguir los siguientes pasos:

sudo apt install php-pear php7.2-dev libmcrypt-dev gcc make autoconf libc-dev pkg-config
sudo pecl -q install mcrypt-1.0.1

Con los comandos anteriores habrás instalado el módulo y solo es necesario que lo configures, puede ser que estés utilizando Nginx y PHP 7.2 FPM, si es el caso utiliza el siguiente conjunto de comandos:

echo 'extension=mcrypt.so' | sudo tee -a /etc/php/7.2/mods-available/mcrypt.ini

El siguiente paso es enlazar el módulo a los entornos de PHP por ejemplo si se ejecuta como FPM o por línea de comandos

sudo ln -s /etc/php/7.2/mods-available/mcrypt.ini /etc/php/7.2/cli/conf.d/20-mcrypt.ini
sudo ln -s /etc/php/7.2/mods-available/mcrypt.ini /etc/php/7.2/fpm/conf.d/20-mcrypt.ini

Al reiniciar el servicio podrás ver el módulo cargado en tu PHP, si tienes un info.php podrás ver lo siguiente:

Para hacerlo solo tienes que ejecutar:

sudo systemctl restart php7.2-fpm.service

Si no estás utilizando PHP FPM o si estás usando Apache 2 como servidor web, entonces solo reinicia el servicio Apache.

This entry was posted in Ubuntu and tagged , , , . Bookmark the permalink.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


*