And*_*tti 26 server php package-management apt apache2
php-mcryptUbuntu 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
Run Code Online (Sandbox Code Playgroud)
Eps*_*pie 40
Mcrypt 已在 PHP 7.2 中弃用,因此默认情况下不可用。
您仍然可以使用 pecl 安装 mcrypt 扩展。这些说明适用于apacheWeb 服务器。
# 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
Run Code Online (Sandbox Code Playgroud)
那应该能让你继续前进。
从长远来看,您可能想要替换mcrypt,它已被弃用是有原因的。
小智 9
我做了以下工作来让这个工作......
sudo add-apt-repository ppa:ondrej/php
sudo apt-get install php7.1-mcrypt
Run Code Online (Sandbox Code Playgroud)
如果您运行的是 php5.6 或 7.0,则可以使用以下命令
sudo apt-get install php5.6-mcrypt
sudo apt-get install php7.0-mcrypt
Run Code Online (Sandbox Code Playgroud)
小智 5
首先检查mcrypt PHP模块是否存在:
$ php -m | grep mcrypt
Run Code Online (Sandbox Code Playgroud)
要安装 mcrypt PHP 模块,我们首先需要满足以下先决条件:
sudo apt install php-dev libmcrypt-dev php-pear
Run Code Online (Sandbox Code Playgroud)
现在我们准备在我们的 Ubuntu 18.04 系统上安装 mcrypt PHP 模块:
$ sudo pecl channel-update pecl.php.net
$ sudo pecl install mcrypt-1.0.1
Run Code Online (Sandbox Code Playgroud)
打开 /etc/php/7.2/cli/php.ini 文件并插入:
extension=mcrypt.so
Run Code Online (Sandbox Code Playgroud)
全部完成。成功后,检查 mcrypt PHP 模块是否存在应该会产生以下输出:
$ php -m | grep mcrypt
mcrypt
Run Code Online (Sandbox Code Playgroud)