当我尝试通过POST向具有此行的脚本发出请求时:

$decrypted_data = openssl_decrypt($encrypted_data, 'AES-256-CBC', $key);

我收到以下错误:



经过研究后,常见的原因是输入了错误的功能名称,或者未在我的Web服务器上安装openssl扩展名。事实证明,它是在与支持人员核对后安装的。那么,我还要寻找什么呢?

最佳答案

我发布此消息,因为它可能对某些人有所帮助。

  • 检查extension=php_openssl.dll中是否启用了php.ini
  • 检查extension_dir是否正确指向php.ini

  • 如果您最近升级的是php版本而不是Apache,则可能无法正确读取libeay32.dllssleay32.dll,这是openssl的要求,或者发生某些版本不匹配的情况。
  • 获取最新版本的libeay32.dllssleay32.dll或从您的php目录中复制它,例如C:\php,并覆盖您的Apache\bin的C:\Apache24\bin目录中的文件。

  • 希望这会有所帮助。

    关于php - 调用未定义的函数openssl_decrypt,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27950428/

    10-12 15:00
    查看更多