密钥生成找不到支持的加密程序.密码和/或密钥长度无效



2并尝试在Heroku中构建我的应用程序,但我的app_KEY 有问题

php artisan key:generate

问题是它总是生成超过32个字符的密钥,例如zrkythusOVoNBAnqrjGaL9RxX2VUOTwK3y5q4Sbaf5s=

所以我尝试将芯片更改为AES-128-CBC,它只生成24个字符,而不是16个而不是32个

我试图用生成的密钥进行推送,它会向我抛出RuntimeException in /app/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php line 45:No supported encrypter found. The cipher and / or key length are invalid.

这是我的应用程序配置

'key' => env('APP_KEY', 'base64:zrkythusOVoNBAnqrjGaL9RxX2VUOTwK3y5q4Sbaf5s='),
'cipher' => 'AES-256-CBC'

尝试替代

'key' => 'base64:zrkythusOVoNBAnqrjGaL9RxX2VUOTwK3y5q4Sbaf5s=',
'cipher' => 'AES-256-CBC',

结果是相同的

我错过什么了吗?

运行php artisan key:generate时,它会使用新的APP_KEY更新.env文件。很可能.env文件中的任何密钥都会覆盖使用app.php配置设置的密钥。

如果密钥是base64编码的,就像您的例子一样,它可以超过32个字符。如果您解码密钥,它应该是<=32个字符。

最新更新