【问题标题】:LAMP Laravel ErrorException mcrypt_get_iv_size(): Module initialization failedLAMP Laravel ErrorException mcrypt_get_iv_size():模块初始化失败
【发布时间】:2014-07-22 17:22:05
【问题描述】:

我在我的新电脑上安装了 laravel,但出现了这个错误:

ErrorException mcrypt_get_iv_size(): 模块初始化失败

我从旧电脑上复制了项目。 mcrypt 已安装并启用,其他不使用 laravel 的页面正在运行。我正在运行 ubuntu 14.04

我创建了一个新的 laravel 项目(使用 laravel new 命令),当我尝试访问时,我得到:

“哎呀,好像出了点问题。”

我打开日志,错误是:

production.ERROR:带有消息的异常“ErrorException” 'mcrypt_get_iv_size(): 模块初始化失败

有什么想法吗?

【问题讨论】:

  • 你有 mcrypt 扩展吗?

标签: laravel mcrypt


【解决方案1】:

在您的命令行上运行 php artisan key:generate 以刷新您的应用程序密钥。

然后清除您的缓存和会话并重试。

我今天也遇到了同样的问题,这是因为 Laravel 4.2 使用了新的加密方法。

【讨论】:

    【解决方案2】:

    在 app/config/app.php 只需更改: '密码' => MCRYPT_RIJNDAEL_256,

    【讨论】:

    • 这个答案实际上对我有用。我已将密码更改为 AES 256,试图让 Laravel 5.0 与 php7 一起使用,但最终退回到 php 5.6。早些时候进行了密码更改,因此阻止了 mcrypt 初始化。这整个事情在 L5.0 之后就被抛弃了,因为 PHP 在 7.0 中贬低了整个加密层,并将在 7.2 中删除它
    【解决方案3】:

    确保您运行 php 7.0,并将此字符串“MCRYPT_RIJNDAEL_256”(不带引号)添加到 app.php 中的密码中。生成新密钥(php artisan key:generate)并添加新密钥后。 这对我有用。

    【讨论】:

      【解决方案4】:

      另一种解决方案:

      • "tomgrohl/laravel4-php71-encrypter": "^1.1" 添加到 composer.json 的要求中
      • 运行composer update
      • 'AES-256-CBC' 添加到app/config/app.php 中的密码中

      完成!

      【讨论】:

        猜你喜欢
        • 2012-10-03
        • 1970-01-01
        • 2012-04-10
        • 2017-07-11
        • 2021-03-02
        • 1970-01-01
        • 1970-01-01
        • 2012-12-09
        • 2022-10-05
        相关资源
        最近更新 更多