Brak pakietu php-mcrypt w Ubuntu Server 18.04 LTS

19

Czy php-mcryptpakiet brakuje w Ubuntu Server 18.04 LTS?

apt install php-mcrypt
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package php-mcrypt is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'php-mcrypt' has no installation candidate
Andrea Rossetti
źródło
Ubuntu php-mcrypt: packages.ubuntu.com/… ... Brak php-mcrypt dla 18.04.
Knud Larsen

Odpowiedzi:

33

Mcrypt jest przestarzały w PHP 7.2, więc domyślnie nie jest dostępny.

Nadal możesz zainstalować rozszerzenie mcrypt za pomocą pecl. Te instrukcje dotyczą apacheserwera WWW.

# Install prerequisites
sudo apt-get install php-dev libmcrypt-dev gcc make autoconf libc-dev pkg-config

# Compile mcrypt extension
sudo pecl install mcrypt-1.0.1
# Just press enter when it asks about libmcrypt prefix

# Enable extension for apache
echo "extension=mcrypt.so" | sudo tee -a /etc/php/7.2/apache2/conf.d/mcrypt.ini

# Restart apache
sudo service apache2 restart

To powinno cię zabrać.

W dłuższej perspektywie możesz chcieć wymienić mcrypt, ponieważ jest on przestarzały z jakiegoś powodu.

Epskampie
źródło
7

Wykonałem następujące czynności, aby uruchomić to ...

sudo add-apt-repository ppa:ondrej/php
sudo apt-get install php7.1-mcrypt

Jeśli korzystasz z php5.6 lub 7.0, możesz użyć następujących

sudo apt-get install php5.6-mcrypt
sudo apt-get install php7.0-mcrypt
DanBarber
źródło
1
Ubuntu 18.04 ma php7.2 w rzeczywistości po dodaniu repozytorium ppa i instalacji php7.1-mcrypt, kiedy robię a2enmod mcrypt, odpowiedź brzmi: „moduł mcrypt nie istnieje”!
Andrea Rossetti
prawdopodobnie używasz php 7.2 ( /etc/php/7.2) - to instaluje go do 7.1 ( /etc/php/7.1/) i działa tylko, jeśli zainstalujesz / użyjesz tej wersji phpapt-get install php7.1
Alvin
3

Najpierw sprawdź, czy moduł PHP mcrypt jest obecny:

$ php -m | grep mcrypt

Aby zainstalować moduł PHP mcrypt, musimy najpierw spełnić następujące warunki wstępne:

sudo apt install php-dev libmcrypt-dev php-pear

Teraz jesteśmy gotowi do zainstalowania modułu PHP mcrypt w naszym systemie Ubuntu 18.04:

$ sudo pecl channel-update pecl.php.net
$ sudo pecl install mcrypt-1.0.1

Otwórz plik /etc/php/7.2/cli/php.ini i wstaw:

extension=mcrypt.so

Wszystko gotowe. Po pomyślnym sprawdzeniu obecności modułu PHP mcrypt powinno wygenerować następujące dane wyjściowe:

$ php -m | grep mcrypt
mcrypt
Robak PHP ...
źródło