No Application Encryption Key Has Been Specified
PhpLaravelLaravel 5Laravel 5.5Laravel ArtisanPhp Problem Overview
I'm new to Laravel and I'm trying to use the Artisan command...
php artisan serve
It displays...
> Laravel development server started: <http://127.0.0.1:8000>
However, it won't automatically launch and when I manually enter http://127.0.0.1:8000 it shows this error:
> RuntimeException No application encryption key has been specified.
Any ideas? I'm using Laravel framework 5.5-dev.
Php Solutions
Solution 1 - Php
From Encryption - Laravel - The PHP Framework For Web Artisans:
> "Before using Laravel's encrypter, you must set a key option in your
> config/app.php configuration file. You should use the
> php artisan key:generate
command to generate this key"
I found that using this complex internet query in google.com:
"laravel add encrption key" (Yes, it worked even with the typo!)
Note that if the .env file contains the key but you are still getting an application key error, then run php artisan config:cache
to clear and reset the config.
Solution 2 - Php
In my case, I also needed to reset the cached config files:
php artisan key:generate
php artisan config:cache
Solution 3 - Php
Open command prompt in the root folder of your project and run below command:
php artisan key:generate
It will generate Application Key for your application.
You can find the generated application key(APP_KEY) in .env
file.
Solution 4 - Php
-
Copy
.env.example
to.env
:cp -a .env.example .env
-
Generate a key:
php artisan key:generate
-
Only then run:
php artisan serve
Solution 5 - Php
Simply run this command:
php artisan key:generate
Solution 6 - Php
cp .env.example .env
if there is no .env file present.
php artisan key:generate
command works for me. It generates the encryption key
Solution 7 - Php
Open command prompt in the root folder of your project and run
php artisan key:generate
Then
php artisan config:cache
and Then
If you're getting the same error after having key-value, then just copy the APP_KEY value from .env file and paste it to config/app.php with 'key' => 'YOUR KEY',
and then again run
php artisan config:cache
Solution 8 - Php
I actually had to add a .env file to my project and then copy the contents of .env.example so that the key:generate
would work. Not sure why a .env file was not created when I started the project.
Solution 9 - Php
php artisan key:generate
php artisan config:cache
worked for me, but it had to be done in a command prompt on Windows.
Doing it inside the terminal in PHPStorm didn't worked.
Solution 10 - Php
A common issue you might experience when working on a Laravel application is the exception:
> RuntimeException No application encryption key has been specified.
You'll often run into this when you pull down an existing Laravel application, where you copy the .env.example
file to .env
but don't set a value for the APP_KEY
variable.
At the command line, issue the following Artisan command to generate a key:
php artisan key:generate
This will generate a random key for APP_KEY
, After completion of .env
edit please enter this command in your terminal for clear cache:php artisan config:cache
Also, If you are using the PHP's default web server (eg. php artisan serve
) you need to restart the server changing your .env
file values. now you will not get to see this error message.
Solution 11 - Php
In 3 steps:
Generate new key php artisan key:generate
Clear the config php artisan config:clear
Update cache php artisan config:cache
Solution 12 - Php
Follow this steps:
php artisan key:generate
php artisan config:cache
php artisan serve
Solution 13 - Php
Okay, I'll write another instruction, because didn't find the clear answer here. So if you faced such problems, follow this:
- Rename or copy/rename .env.example file in the root of your project to .env.
> You should not just create empty .env file, but fill it with > content of .env.example.
- In the terminal go to the project root directory(not public folder) and run
> php artisan key:generate
- If everything is okay, the response in the terminal should look like this
> Application key [base64:wbvPP9pBOwifnwu84BeKAVzmwM4TLvcVFowLcPAi6nA=] > set successfully.
- Now just copy key itself and paste it in your .env file as the value to APP_KEY. Result line should look like this:
> APP_KEY=base64:wbvPP9pBOwifnwu84BeKAVzmwM4TLvcVFowLcPAi6nA=
- In terminal run
> php artisan config:cache
That's it.
Solution 14 - Php
I found that most answers are incomplete here. In case anyone else is still looking for this:
- Check if you have APP_KEY= in your .env, if not just add it without a value.
- Run this command: php artisan key:generate. This will fill in the value to the APP_KEY in your .env file.
- Finally, run php artisan config:cache in order to clear your config cache and recache your config with the new APP_KEY value.
Solution 15 - Php
You can generate Application Encryption Key using this command:
php artisan key:generate
Then, create a cache file for faster configuration loading using this command:
php artisan config:cache
Or, serve the application on the PHP development server using this command:
php artisan serve
That's it!
Solution 16 - Php
If you git clone some project then this kind of issue may usually occur.
- make sure there is
.env
file - run
php artisan key:generate
and then it should generate APP_KEY in .env - finally run
php artisan serve
and it should be working.
Solution 17 - Php
Simply run command php artisan key:generate.. Still issue exist then run one more command php artisan config:cache and php artisan cache:clear ..
Now run php artisan serve
Solution 18 - Php
If you don't have a .env
file then run the below command, else skip this
cp .env.example .env
Then run the below artisan command and it will generate an application key for your project:
php artisan key:generate
Note: Your APP_KEY
is inside your .env
file.
Solution 19 - Php
If after running php artisan key:generate
issue is not resolved, check your .env
file.
Search for APP_KEY=
.
If it doesn't exist, manually add it to .env
file and run php artisan key:generate
again.
After this you will see generated key in .env
file.
Copy that key and paste it in /config/app.php
(search for APP_KEY
there as well). You should end up with something like this in app.php
file
'key' => env('APP_KEY', 'base64:...'),
Then run php artisan serve
(You might have to run php artisan config:cache
at some point. Not 100% sure when)
Solution 20 - Php
I ran into this issue when I manually copied the contents of my Laravel project (say sites/oldname) into a new directory on my Mac (say, sites/newname). Since I was manually dragging and droppping, it didn't grab the hidden files, namely, '.env'. When I looked more closely at sites/oldname I saw .editorconfig, .env, .env.example, .gitatrributes, .styleci.yml, etc.
The error went away once I copied the hidden files to the new directory.
So, "No Application Encryption Key Has Been Specified" is Laravel speak for "your .env file is missing."
Solution 21 - Php
Sometimes If everything Fails Use this:
Goto: laravelProject/config/app.php
Find the line: 'key' =>
and check to what it refers,
It can either be one of two:
Case 1: env('APP_KEY')
Case 2: "somekeystring"
For Case 1:
Goto your .env file after you have run cp -a .env.example .env
Enter a random string like 10101010101010101010101010101010
Now, run php artisan key:generate
Your key will be updated automatically.
For Case 2:
set a random string like for value of Key 10101010101010101010101010101010
Now, run php artisan key:generate
Your key will be updated automatically.
Solution 22 - Php
simply run
php artisan key:generate
its worked for me
Solution 23 - Php
Facing the Same Issue in Laravel v8.49.0 (PHP v8.0.6) Solution
- Click
> Genrate app key
-
Click on Refresh now
Solution 24 - Php
I had to restart my queue worker using php artisan queue:restart
after running php artisan key:generate
to get jobs working.