LoginSignup
10
5

More than 3 years have passed since last update.

No application encryption key has been specifiedを解決する

Posted at

エラー発生

ソースコードをcloneした後に、ローカルでサーバーを立ち上げてページアクセスすると画面に「500 | SERVER ERROR」が表示。

原因調査

storage/logs/laravel.logでエラー内容を確認します。
エラーの原因は下記の通り。

storage/logs/laravel.log
[2021-02-14 03:34:41] production.ERROR: No application encryption key has been specified. {"exception":"[object] (Illuminate\\Encryption\\MissingAppKeyException(code: 0): No application encryption key has been specified. at /Users/******/dev/laravel-project/laravel-blade-sortable-demo/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php:79)

これは「プロジェクトに暗号化キーが未設定」だと意味しています。
なので、暗号化キーを設定する必要があります。

暗号化キーの確認

プロジェクトで暗号化キーがセット済みかどうかの確認は3通りあります(セットされた暗号化キーの値も確認できます)。

  • .envファイルのAPP_KEYに値がセットされているか確認
  • コマンドcat .env | grep "^APP_K"で確認
  • コマンドphp artisan key:generate --showで確認

[解決]暗号化キーの設定

下記コマンドで設定する。

$ php artisan key:generate
Application key set successfully.

コマンド実行後、.envファイルのAPP_KEYに値がセットされていました。

設定した値が反映されていない可能性があるため、(サーバーを一旦停止した後に)下記コマンドでキャッシュをクリアしときます。

$ php artisan config:clear
Configuration cache cleared!

この後にサーバーを立ち上げ、ページアクセスするとエラーが解消されていました。

参考

10
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
5