Ula*_*ana 5 php database laravel-5
有时(大约每20个请求)我会收到此错误。但是下一个(下一秒)相同的请求也可以。我不知道为什么它没有通过第一个。有时我会遇到另一个错误:
找不到支持的加密器。密码和/或密钥长度无效。
我的.env数据库参数很好。
我已经使用生成了密钥 php artisan key:generate
该密钥在我.env文件中的一个APP_KEY密钥下
我config/app.php有一把钥匙'key' => env('APP_KEY'), 'cipher' => 'AES-256-CBC'
有谁知道这怎么发生?
小智 15
只需使用缓存您的配置
php artisan config:cache
Run Code Online (Sandbox Code Playgroud)
每次设置.env文件后不要忘记执行此 操作。
在过去的几天里,我遇到了完全相同的问题,我想我已经解决了:
.env中的设置由于某些原因或某些原因并不总是使用,偶尔Laravel只会使用config / app.php和config / database.php中的默认设置。
config / app.php:
'key' => env('APP_KEY', 'SomeRandomString'),
'cipher' => 'AES-256-CBC',
Run Code Online (Sandbox Code Playgroud)
将'SomeRandomString'更改为.env生成的密钥
config / database.php
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
Run Code Online (Sandbox Code Playgroud)
从.env将localhost,数据库,用户名,密码更改为您的实际设置。如果使用其他数据库,则此示例适用于MySQL,请改用这些变量。
可能有一个更好的解决方案(更安全吗?),但这是迄今为止阻止该错误出现的原因。