Mcrypt PHP-模块初始化失败



如何在PHP上安装mcrypt模块

我需要在WAMPServer上安装mcrypt扩展,这样我就可以对密码使用IDEA加密。我不能使用任何其他类型的加密,因为我正在与之交互的大型数据库已经对密码使用了IDEA加密。

我已经做了很多关于在PHP上安装mcrypt扩展的研究。我看到有两个主要步骤:

  1. 安装扩展
  2. 请参阅php.ini文件中算法和模式所在的目录

步骤1我成功完成了,因为它不再给出致命错误:"调用未定义的函数mcrypt_encrypt…">

步骤2是我遇到问题的地方,因为现在当我调用mcrypt_encrypt函数php时会返回警告:"警告:mcrypt_encrypt():模块初始化失败…">

  • 我从以下位置下载了mcrypt扩展:http://www.dlldll.com/php_mcrypt.dll_download.html
  • 我从以下位置下载了mcrypt算法和模式:http://sourceforge.net/projects/mcrypt/files/Libmcrypt/Production/libmcrypt-2.5.7.tar.gz/download

我把包含所有算法和模式的目录(libmcrypt)放在php扩展文件夹中,然后在php.ini中我写了这两行:

mcrypt.algorithms_dir = "c:/wamp/bin/php/php5.4.3/ext/libmcrypt/modules/algorithms"

mcrypt.modes_dir = "c:/wamp/bin/php/php5.4.3/ext/libmcrypt/modules/modes"

然后我重新启动WAMPServer,它发出警告:"PHP启动:无法加载动态库'c:\wamp/bin/PHP/php5.4.3/ext/PHP_mcrypt.dll'-找不到指定的模块。">

我一直在网上搜索如何安装mcrypt扩展的教程,但我找不到!所以我来到了老StackOverflow,希望有人能帮忙?

建议1:

libmcrypt.dll对Apache/php_mcrypt.dll不可用。我想我们应该先检查phpinfo()mcrypt可用

建议2:

print_r(mcrypt_list_algorithms());应该显示IDEA算法。。。由于它不是一个免费的算法(尽管专利于2011年5月到期),它可能不包括在内IDEA算法未列为可用

建议3:

你不会喜欢这一点,但我所读到的内容表明,你必须自己构建PHP(首先是使用IDEA的mcrypt,然后是使用MCRYPT的php),这在Windows上会有点痛苦(没有像Linux那样内置所有默认编译器等)。作为替代方案,您可以四处寻找包含MCRYPT/IDEA。。看起来其中一些包括它(旧版本、64位版本、VC9版本)不幸的是人们在安装指南/讨论中对此有想法,因此很难找到是否包含IDEA算法的文档;)

相关内容

最新更新