调用未定义的函数openssl_decrypt

CJ_*_*BRA 4 php openssl php-openssl

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

$decrypted_data = openssl_decrypt($encrypted_data, 'AES-256-CBC', $key);
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

致命错误:在第11行的mypath/usuario_webservice.php中调用未定义的函数openssl_decrypt()

经过一些研究后,常见的原因是为函数输入了错误的名称,或者我的Web服务器上没有安装openssl扩展名.事实证明,它是在我检查支持时安装的.那么,我还应该寻找什么呢?

Sam*_*dey 11

我发布这个,因为它可能对一些人有帮助.

  • 检查extension=php_openssl.dll已启用php.ini.
  • 检查extension_dir指向正确php.ini.

如果你最近升级了你的php版本而不是你的Apache那么它可能是正确的libeay32.dll并且ssleay32.dll没有被读取,这是openssl或某些版本不匹配的要求.

  • 获取最新版本的libeay32.dllssleay32.dll或从你的php目录复制它说C:\php并覆盖在Apache\bin中的文件说C:\Apache24\bin目录.

希望这会有所帮助.


Hal*_*nis 3

通过删除分号在php.ini文件中启用此扩展

extension=php_openssl.dll
Run Code Online (Sandbox Code Playgroud)

重新启动您的Apache服务器并重试
希望有帮助:)

  • OP 必须联系支持人员,所以我假设他在托管服务器上遇到此问题,并且可能无法访问 php.ini 文件(取决于他们拥有的托管类型),因此这篇文章可能被证明是不正确的。 (2认同)