- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
当我尝试从 PHP 7.2.X 版本加载 mcrypt 扩展模块时。
所以我尝试使用与我的 PHP 的当前版本兼容的 PECL 库,以便安装并点击此链接: Installing mcrypt on PHP 7.2安装过程中!
以下是在终端上执行某些命令后得到的结果。
root@YYY:/var/www/html/orocrm# apt install php-pear
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
libllvm4.0
Use 'sudo apt autoremove' to remove it.
The following NEW packages will be installed:
php-pear
0 upgraded, 1 newly installed, 0 to remove and 14 not upgraded.
Need to get 285 kB of archives.
After this operation, 2,107 kB of additional disk space will be used.
Get:1 http://ppa.launchpad.net/ondrej/php/ubuntu xenial/main amd64 php-pear all 1:1.10.5+submodules+notgz-1+ubuntu16.04.1+deb.sury.org+1 [285 kB]
Fetched 285 kB in 1s (230 kB/s)
Selecting previously unselected package php-pear.
(Reading database ... 215503 files and directories currently installed.)
Preparing to unpack .../php-pear_1%3a1.10.5+submodules+notgz-1+ubuntu16.04.1+deb.sury.org+1_all.deb ...
Unpacking php-pear (1:1.10.5+submodules+notgz-1+ubuntu16.04.1+deb.sury.org+1) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up php-pear (1:1.10.5+submodules+notgz-1+ubuntu16.04.1+deb.sury.org+1) ...
YYY@YYY:/var/www/html/orocrm$ sudo apt-get -y install gcc make autoconf libc-dev pkg-config
[sudo] password for YYY:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'libc6-dev' instead of 'libc-dev'
gcc is already the newest version (4:5.3.1-1ubuntu1).
make is already the newest version (4.1-6).
pkg-config is already the newest version (0.29.1-0ubuntu1).
libc6-dev is already the newest version (2.23-0ubuntu9).
The following package was automatically installed and is no longer required:
libllvm4.0
Use 'sudo apt autoremove' to remove it.
Suggested packages:
autoconf-archive gnu-standards autoconf-doc libtool
The following NEW packages will be installed:
autoconf automake autotools-dev libsigsegv2 m4
0 upgraded, 5 newly installed, 0 to remove and 14 not upgraded.
Need to get 1,079 kB of archives.
After this operation, 3,998 kB of additional disk space will be used.
Get:1 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libsigsegv2 amd64 2.10-4 [14.1 kB]
Get:2 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 m4 amd64 1.4.17-5 [195 kB]
Get:3 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 autoconf all 2.69-9 [321 kB]
Get:4 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 autotools-dev all 20150820.1 [39.8 kB]
Get:5 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 automake all 1:1.15-4ubuntu1 [510 kB]
Fetched 1,079 kB in 2s (447 kB/s)
Selecting previously unselected package libsigsegv2:amd64.
(Reading database ... 215198 files and directories currently installed.)
Preparing to unpack .../libsigsegv2_2.10-4_amd64.deb ...
Unpacking libsigsegv2:amd64 (2.10-4) ...
Selecting previously unselected package m4.
Preparing to unpack .../archives/m4_1.4.17-5_amd64.deb ...
Unpacking m4 (1.4.17-5) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../autoconf_2.69-9_all.deb ...
Unpacking autoconf (2.69-9) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../autotools-dev_20150820.1_all.deb ...
Unpacking autotools-dev (20150820.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../automake_1%3a1.15-4ubuntu1_all.deb ...
Unpacking automake (1:1.15-4ubuntu1) ...
Processing triggers for install-info (6.1.0.dfsg.1-5) ...
Processing triggers for man-db (2.7.5-1) ...
Processing triggers for doc-base (0.10.7) ...
Processing 1 added doc-base file...
Setting up libsigsegv2:amd64 (2.10-4) ...
Setting up m4 (1.4.17-5) ...
Setting up autoconf (2.69-9) ...
Setting up autotools-dev (20150820.1) ...
Setting up automake (1:1.15-4ubuntu1) ...
update-alternatives: using /usr/bin/automake-1.15 to provide /usr/bin/automake (automake) in auto mode
Processing triggers for libc-bin (2.23-0ubuntu9) ...
YYY@YYY:/var/www/html/orocrm$ sudo apt-get -y install libmcrypt-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
libllvm4.0
Use 'sudo apt autoremove' to remove it.
The following NEW packages will be installed:
libmcrypt-dev
0 upgraded, 1 newly installed, 0 to remove and 14 not upgraded.
Need to get 83.7 kB of archives.
After this operation, 438 kB of additional disk space will be used.
Get:1 http://in.archive.ubuntu.com/ubuntu xenial/universe amd64 libmcrypt-dev amd64 2.5.8-3.3 [83.7 kB]
Fetched 83.7 kB in 0s (105 kB/s)
Selecting previously unselected package libmcrypt-dev.
(Reading database ... 215484 files and directories currently installed.)
Preparing to unpack .../libmcrypt-dev_2.5.8-3.3_amd64.deb ...
Unpacking libmcrypt-dev (2.5.8-3.3) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up libmcrypt-dev (2.5.8-3.3) ...
YYY@YYY:/var/www/html/orocrm$ sudo pecl7.2-sp install --nodeps mcrypt-snapshot
sudo: pecl7.2-sp: command not found
当我收到这种类型的错误 pecl7.2-sp: command not found
在文档部分,已经明确声明它已被弃用,并且从安全角度来看将不再可用 - 从那时起,从 PHP 7.2.X 的发布版本开始。
但有些项目需要这些依赖项,以便在必要时执行所需的功能。我需要如何解决上述问题?
TL;DR:
我从投票中得到了很多回应发布的答案。需要根据操作系统架构级别对答案进行分类。由于我使用共享服务器进行托管,因此有多个项目驻留在它上面并且使用 PHP 5.X.X 的版本进行编码,所以我决定降级到 PHP 7.1.X在我的基于 Debian 的操作系统中默认支持 mcrypt 扩展。
正如我在链接中提到的,而 Installing mcrypt Extension on PHP 7.2 ,由 Server Pilot 社区提供。这些人告诉过更新版本的 pecl-7.2 可用于在 PHP-7.2 上安装 mcrypt。不幸的是,它以pecl7.2-sp: command not found
来自已执行的命令。后来网站页面更新了,所以那里的命令与执行时尝试的命令不匹配。
最后,无论哪种解决方案都适合您的操作系统架构级别,就去做吧!
或
如果以下方法不能解决根本原因。
或者,您可以选择默认支持 mcrypt 扩展的 PHP 7.1.X 版本
最佳答案
我按照以下步骤安装 mcrypt PHP7.2 使用 PECL。
apt-get install php-pecl
apt-get install libmcrypt-dev libreadline-dev
pecl install mcrypt-1.0.1
You should add "extension=mcrypt.so" to php.ini
如果您需要任何帮助,请在下方评论。 :-)
IMPORTANT !
According to php.net reference many (all) mcrypt functions have been DEPRECATED as of PHP 7.1.0. Relying on this function is highly discouraged.
关于php - 安装 php7.2-mcrypt 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48275494/
我一直在尝试在服务器端、PHP 和客户端上实现 mcrypt 加密/解密技术。我正在尝试使用 mcrypt.js目前的图书馆为: '; echo 'Encyrpted Value: '.$enc_s
我正在尝试使用 Node 的 mycrypt 模块将旧 PHP 应用程序中的加密函数重新创建到新的 Node JS 应用程序中。 我的目标是确保在给定相同的原始字符串和盐的情况下,下面的 PHP 脚本
我需要尝试在某些示例中进行 AES 加密/解密,并且必须在我的 C 文件中使用 mcrypt.h。但是,我不知道如何安装它们。我已经从 https://sourceforge.net/projects
我有两个函数,一个用于加密和解密字符数组(变量称为:缓冲区),然后我将字符保存在文件中,以便稍后可以解密,但我注意到,如果我修改任何加密文本中的字符,mcrypt不会警告任何错误,它只是在一段文本中显
我在这门课上有一个奇怪的地方: _ch = mcrypt_module_open( $algorithm, $encLibPath, $mode, $modeDir ); $vecto
我需要在服务器端进行中度到强度的加密,所以我想我会在 PHP 中使用 mcrypt。如果我使用下面的函数,原始字符串的开头在解密后会变成二进制垃圾。 (这不是获取附加额外垃圾的常见问题,而是我的字符串
我正在尝试将加密数据写入文件。但是,当将它读回程序并尝试对其进行解密时,我只会得到垃圾。无需将其写入文件,它似乎就可以正常工作。我做错了什么? 代码如下: MCRYPT td, td2; cha
我有两个函数和一个随机生成的 key : function encode ($a) { $key = "7HLgdzXyaTaZuTss6xayLk3qLTJ2jsRLgPnMzpNwhwnE
我正在使用 C++ 代码开发 ubuntu。我想从这个链接用 mcrypt 测试一个例子:http://linux.die.net/man/3/mcrypt ,但是当我这样做时: gcc test.c
代码: function sign($data,$iv,$hexKey){ $_cipher = mcrypt_module_open(MCRYPT_RIJNDAEL
我想在 RESTful 请求中使用 header 的非对称加密来验证发送请求的系统的身份:即系统 A 在对系统 B 的请求中使用它的公钥加密它的名称、时间戳和服务名称。系统B再使用系统A的公钥解密,证
我已经尝试了所有方法,但无法修复此错误。我通过下载安装了 PHP,然后运行: brew install php55-mcrypt 我最初用 PHP 5.3 安装它,然后 Laravel 提示说它必须大
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
我知道 PHP 的 mcrypt_decrypt 上已经有上百万篇文章,但我找不到与我的结果相同的文章。我有一对简单的加密/解密函数,我想用它们对数据执行双向加密。奇怪的是,对于我输入函数的任何随机字
我正在尝试安装 mcrypt 以便在我的本地机器开发环境中使用。我需要这个来安装 Magento。 我将此答案用于 install mcrypt ,但出现以下错误: $ brew link mcryp
我是这个加密的新手,所以我不太确定如何格式化我的问题。 无论如何,我正在使用名为 kohana 的框架,并且它使用三样东西进行加密: key, cipher, mode 所以我的问题是,当它编码一些字
我已经将我的 php 版本更新到 7.1。我有使用 mcrypt 加密数据的功能。现在此功能已弃用。 如何在不返回到旧版本的 php 的情况下解密数据。 这是我使用的代码: public functi
我一直在测试各种 modes在 PHP 的 mcrypt 函数中可用。 ECB 是大多数教程中使用的模式,但刚刚链接的页面和 some users 都不推荐使用该模式,所以我认为 CBC 或 CFB
我正在使用以下代码使用 mcrypt 执行加密 较新版本的 php 贬低了 mcrypt,我正在寻找使用相同 key 并产生相同结果的相同版本的替代品,因此我不需要更改客户端代码。 最佳答案 我是
我正在使用 ubuntu 13.10。我需要在我的终端上进行 mcrypt 扩展。我的服务器已经安装了它。我关注这个 question和 lunchpad . 所以我执行这个命令: sudo ln -
我是一名优秀的程序员,十分优秀!