如何找到依赖于已弃用库的 PHP 模块?

Posted

技术标签:

【中文标题】如何找到依赖于已弃用库的 PHP 模块?【英文标题】:How do I find PHP modules that depend on a deprecated library? 【发布时间】:2020-02-03 14:57:36 【问题描述】:

我已将我的 AWS-EC2 LAMP 配置升级到 Ubuntu 16.04、Apache/2.4.39、mysql Ver 14.14 Distrib 5.7.27、php 7.1.28,它删除了 PHP mcrypt 模块。我需要确定我的配置是否真的使用 mcrypt 功能。如果没有,我可以安全地删除导致错误的加载请求。如果是,那我需要想办法用openssl来代替mcrypt。我知道强制加载 mcrypt 模块没有什么意义,但似乎没有现成的替代品。建议?

【问题讨论】:

我不认为这个问题是关于 AWS EC2 它更普遍地适用于 debian 上的包管理器。 大卫,我同意。添加细节以提供背景;他们不是问题的一部分。 【参考方案1】:

我需要确定我的配置是否真的使用了 mcrypt 功能。

grep -r mcrypt /path/to/your/code 应该足够了。

我知道强制加载 mcrypt 模块没有什么意义,但似乎没有现成的替代品。

https://github.com/phpseclib/mcrypt_compat 可以用作 mcrypt 的纯 PHP 替代品。

【讨论】:

感谢您的参考。我会检查一下。

以上是关于如何找到依赖于已弃用库的 PHP 模块?的主要内容,如果未能解决你的问题,请参考以下文章

PHP 7.2:每个都已弃用。如何转换这些例子? [复制]

如何更新使用已弃用 each() 函数的代码?

数据 URI 正文中未转义的“#”字符已弃用;如何在项目中找到?

如何在最新的 XAMPP 上运行已弃用的 php 代码 [重复]

如何修复已弃用的“按钮样式”

Android 已弃用 apache 模块(HttpClient、HttpResponse 等)