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个字符。