crhg/laravel-env-check is a Laravel package.
It currently has 1 GitHub stars and 49 downloads on Packagist (latest version v1.2.3).
Install it with composer require crhg/laravel-env-check.
Discover more Laravel packages by crhg
or browse all Laravel packages to compare alternatives.
Last updated
Enhance checking of configuration cache and environment.
Laravel's environment can be sepcified with the --env option of artisan command or APP_ENV environment variable, but specified environment is ignored when the configuration is cached.
Since this is potentially dangerous, when configuration is cached, it is prohibited to specify the environment with --env option or APP_ENV environment variable.
config:cache commandWhen generating the configuration cache with the config: cache command, prohibit specification of the environment with the --env option or the APP_ENV environment variable.
Therefore, only the default environment described in the .env file can be cached.
.env fileSaves the checksum of the .env file when the config cache is generated.
It is checked whether it matches that of the current .env file.
If they do not match, an error will occur.
Some artisan commands do not depend on the environment, so exclude them from checking.
If you want to add some commands to exclude, use the excluded_command setting in config/env_check.php.
composer require crhg/laravel-env-check
php artisan vendor:publish --provider='Crhg\EnvCheck\Providers\EnvCheckServiceProvider'
Add the following code before return $app in bootstrap/app.php;
$app->singleton(\Crhg\EnvCheck\EnvChecker::class);
$app->beforeBootstrapping(
\Illuminate\Foundation\Bootstrap\LoadEnvironmentVariables::class,
function ($app) {
$checker = $app->make(\Crhg\EnvCheck\EnvChecker::class);
$checker->examineEnvironmentVariables();
}
);
local environment is cached:% php artisan migrate:status --env=foo
Don't use --env option when configuration is cached
.env is modified after config:cache:% php artisan migrate:status
.env hash unmatch