Encrypter.php中未定义的函数openssl_encrypt()

时间:2016-09-21 13:43:47

标签: php laravel laravel-5.3 php-openssl

我收到以下错误:

  

在Encrypter.php第73行中调用未定义的函数openssl_encrypt()

看起来很明显,但是在我的配置中启用了OpenSSL扩展,只有在使用artisan serve时才会出现此错误,查看配置并启用它。

做了一些研究: 在artisan文件

中复制以下代码
$loaded = extension_loaded('openssl');
var_dump($loaded);die();

它返回true。但是当我将相同的代码复制到/public/index.php时,它会返回false

所以我假设在openssl中启用了php-cli扩展名,但由于某种原因,它在到达引导程序文件后被禁用。

*如果有人有兴趣,我正在使用UniServer。

1 个答案:

答案 0 :(得分:3)

在Windows上的Apache 2.4,PHP7,Fresh Laravel 5.3上有同样的问题。 我的Apache错误日志显示

"PHP Warning:  PHP Startup: Unable to load dynamic library 'C:\\wamp\\php\\ext\\php_openssl.dll' - The operating system cannot run %1.\r\n in Unknown on line 0"

通过将libeay32.dll和ssleay32.dll从PHP-root文件夹复制到Apache / bin文件夹并重新启动Apache来修复它。