Laravel项目出现"No supported encrypter found. The cipher and / or key length are invalid."的解决办法

吴宇 2020-02-07 21℃ 0条

在使用laravel5.2进行项目开发的时候,出现了“No supported encrypter found. The cipher and / or key length are invalid.”的报错信息,导致页面无法显示。

       首先要看config/app.php中的cipher值。

       如果cipher的值是AES-256-CBC,那么通过执行命令

php artisan key:generate

       生成新的key就可以解决。这时生成的新key就会直接写入到.env文件内。

       如果cipher是其他值,例如rijndael-256,就需要安装和启动mcrypt模块。AES-256-CBC不需要的原因是因为AES-256-CBC算法对应的底层是用openssl实现的,而与mcrypt无关。rijndael-256则是依赖于mcrypt模块。

  • 检查mcrypt是否安装。

       执行

php -r “print_r(mcrypt_list_algorithms());”

       有无输出结果,或者查看

phpinfo()
  • 如果已经安装了就启动mcrypt模块。
php5enmod mcrypt
  • 重启nginxphp-fpm
标签: phplaravel

非特殊说明,本博所有文章均为博主原创。