Tutorial 23 Jul 2026 9 Kali Dibaca

Cara Mengatasi No Application Encryption Key pada Laravel

Gugun Nurdiansyah
Penulis
Cara Mengatasi No Application Encryption Key pada Laravel

Apa Itu Error No Application Encryption Key?

Saat menjalankan aplikasi Laravel, Anda mungkin menemukan pesan error berikut:

Illuminate\Encryption\MissingAppKeyException

No application encryption key has been specified.

Pesan tersebut berarti Laravel tidak menemukan application key yang dibutuhkan untuk menjalankan sistem enkripsi.

Application key disimpan di dalam file .env pada bagian berikut:

APP_KEY=base64:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=

Jika bagian APP_KEY kosong atau tidak terbaca, Laravel akan menampilkan error dan aplikasi tidak dapat dijalankan dengan normal.

Fungsi APP_KEY pada Laravel

APP_KEY merupakan salah satu konfigurasi keamanan penting dalam Laravel.

Nilai ini digunakan untuk membantu mengenkripsi berbagai data aplikasi, seperti:

  1. Cookie aplikasi.

  2. Data sesi tertentu.

  3. Token terenkripsi.

  4. Informasi yang diproses melalui fitur Crypt.

  5. Data sensitif yang disimpan oleh aplikasi.

  6. Fitur tambahan yang menggunakan sistem enkripsi Laravel.

Karena berhubungan dengan keamanan, setiap aplikasi Laravel harus memiliki APP_KEY yang unik.

Penyebab No Application Encryption Key

Berikut beberapa penyebab yang paling sering terjadi.

1. APP_KEY Masih Kosong

Buka file .env, kemudian periksa bagian berikut:

APP_KEY=

Jika masih kosong, berarti application key belum dibuat.

2. File .env Belum Tersedia

Project yang diambil dari repository seperti GitHub biasanya tidak menyertakan file .env.

Biasanya hanya tersedia file:

.env.example

File tersebut perlu disalin menjadi:

.env

3. File .env Berada di Folder yang Salah

File .env harus berada di folder utama project Laravel.

Posisinya harus sejajar dengan file dan folder berikut:

app
artisan
bootstrap
composer.json
config
public
resources
routes
storage
vendor
.env

Jangan meletakkan .env di dalam folder public atau public_html.

4. Cache Konfigurasi Masih Menggunakan Data Lama

Laravel dapat menyimpan konfigurasi ke dalam cache.

Jika APP_KEY baru saja ditambahkan tetapi cache belum dibersihkan, Laravel mungkin masih membaca konfigurasi lama.

5. Perintah Artisan Dijalankan di Folder yang Salah

Perintah Laravel harus dijalankan dari folder yang memiliki file artisan.

Jika dijalankan dari folder lain, biasanya muncul pesan:

Could not open input file: artisan

6. File .env Tidak Dapat Dibaca

Masalah permission atau ownership dapat menyebabkan server gagal membaca file .env.

Kasus ini sering terjadi setelah project dipindahkan ke hosting atau VPS.

Cara Mengatasi No Application Encryption Key

Ikuti langkah-langkah berikut secara berurutan.

Langkah 1: Masuk ke Folder Utama Laravel

Buka Terminal cPanel atau SSH, kemudian masuk ke folder project Laravel.

Contoh:

cd /home/username/OVLAWEB

Setelah itu, periksa isi folder:

ls

Pastikan terdapat file:

artisan

Jika file tersebut tersedia, berarti Anda sudah berada di folder yang benar.

Langkah 2: Periksa File .env

Gunakan perintah berikut:

ls -la

Pastikan terdapat file:

.env

Jika file .env belum tersedia, salin dari .env.example:

cp .env.example .env

Setelah itu, buka file .env dan periksa konfigurasi berikut:

APP_NAME=Laravel
APP_ENV=production
APP_KEY=
APP_DEBUG=false
APP_URL=https://domainanda.com

Langkah 3: Buat Application Key

Jalankan perintah berikut:

php artisan key:generate

Jika berhasil, terminal akan menampilkan pesan:

Application key set successfully.

Laravel akan mengisi bagian APP_KEY secara otomatis.

Contohnya:

APP_KEY=base64:AbCdEfGhIjKlMnOpQrStUvWxYz1234567890abcd=

Langkah 4: Bersihkan Cache Laravel

Setelah application key berhasil dibuat, jalankan:

php artisan optimize:clear

Perintah tersebut akan membersihkan beberapa cache Laravel sekaligus.

Anda juga dapat menjalankan perintah secara terpisah:

php artisan config:clear
php artisan cache:clear

Setelah aplikasi berjalan normal pada server production, Anda dapat membuat ulang cache konfigurasi:

php artisan config:cache

Urutan Perintah yang Disarankan

Untuk instalasi Laravel baru, gunakan urutan berikut:

cd /lokasi/project-laravel

cp .env.example .env

php artisan key:generate

php artisan optimize:clear

Jika project baru dipindahkan dari komputer lokal atau repository, jalankan:

composer install

cp .env.example .env

php artisan key:generate

php artisan optimize:clear

Setelah itu, sesuaikan konfigurasi database dan URL aplikasi di dalam file .env.

Cara Mengatasi di cPanel atau Shared Hosting

Pada shared hosting, source code Laravel dan folder website sering dipisahkan.

Contohnya:

/home/username/OVLAWEB
/home/username/public_html

Source code Laravel berada di:

/home/username/OVLAWEB

Sementara isi folder public Laravel ditempatkan di:

/home/username/public_html

Dalam kondisi tersebut, jalankan perintah Artisan dari folder source code:

cd /home/username/OVLAWEB

php artisan key:generate

php artisan optimize:clear

Jangan menjalankan perintah dari public_html jika tidak terdapat file artisan di dalamnya.

Jika Versi PHP Terminal Tidak Sesuai

Pada cPanel, versi PHP terminal terkadang berbeda dengan versi PHP yang digunakan website.

Periksa versi PHP dengan:

php -v

Jika Laravel membutuhkan PHP 8.3 atau PHP 8.4, Anda dapat menggunakan lokasi PHP khusus.

Contoh PHP 8.3:

/opt/cpanel/ea-php83/root/usr/bin/php artisan key:generate

Contoh PHP 8.4:

/opt/cpanel/ea-php84/root/usr/bin/php artisan key:generate

Setelah itu, bersihkan cache menggunakan versi PHP yang sama:

/opt/cpanel/ea-php84/root/usr/bin/php artisan optimize:clear

Sesuaikan ea-php84 dengan versi PHP pada hosting Anda.

Cara Membuat APP_KEY Tanpa Mengubah File .env

Jika Anda hanya ingin menampilkan key tanpa langsung menyimpannya, jalankan:

php artisan key:generate --show

Terminal akan menghasilkan key seperti:

base64:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=

Salin key tersebut ke dalam file .env:

APP_KEY=base64:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=

Setelah itu, bersihkan cache:

php artisan optimize:clear

Cara ini berguna jika terminal dapat menjalankan Artisan, tetapi tidak memiliki izin untuk mengubah file .env.

Cara Mengatasi Tanpa Terminal

Jika hosting tidak menyediakan Terminal atau SSH, Anda masih dapat membuat application key dari komputer lokal.

Masuk ke folder project Laravel pada komputer, kemudian jalankan:

php artisan key:generate --show

Salin hasil key tersebut.

Setelah itu, buka File Manager cPanel dan edit file .env:

APP_KEY=base64:key-yang-dihasilkan=

Jika error masih muncul, periksa file berikut:

bootstrap/cache/config.php

Hapus file config.php tersebut jika tersedia.

Jangan menghapus folder bootstrap/cache.

Jika APP_KEY Sudah Terisi tetapi Error Masih Muncul

Jika bagian APP_KEY sudah terisi tetapi error tetap muncul, lakukan pemeriksaan berikut.

Periksa Penulisan APP_KEY

Gunakan format berikut:

APP_KEY=base64:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=

Hindari penulisan seperti:

APP_KEY = base64:xxxxxxxx

Sebaiknya jangan menambahkan spasi sebelum atau setelah tanda sama dengan.

Bersihkan Cache

Jalankan:

php artisan optimize:clear

Jika tidak memiliki terminal, hapus file:

bootstrap/cache/config.php

Periksa Lokasi File .env

Pastikan file .env yang diedit benar-benar berada di project Laravel yang sedang digunakan oleh website.

Pada hosting, terkadang terdapat lebih dari satu folder project Laravel.

Periksa Permission File

Anda dapat menggunakan permission berikut sebagai contoh:

chmod 640 .env

Namun, konfigurasi permission dapat berbeda tergantung server dan ownership akun hosting.

Periksa Konfigurasi config/app.php

Buka file:

config/app.php

Pastikan terdapat konfigurasi application key yang mengarah ke environment:

'key' => env('APP_KEY'),

Restart Layanan pada VPS

Jika menggunakan PHP-FPM, queue worker, Laravel Octane, atau service lain yang berjalan terus-menerus, service tersebut mungkin masih membaca konfigurasi lama.

Restart atau reload layanan setelah memperbarui .env.

Jangan Mengganti APP_KEY pada Aplikasi Production Sembarangan

Jika aplikasi sudah berjalan dan digunakan oleh pengguna, jangan langsung menjalankan:

php artisan key:generate

Mengganti application key dapat menyebabkan:

  1. Pengguna keluar dari akun.

  2. Cookie lama tidak dapat dibaca.

  3. Token terenkripsi menjadi tidak valid.

  4. Data terenkripsi gagal dibuka.

  5. Fitur tertentu mengalami error.

Jika APP_KEY sebenarnya sudah tersedia, cukup bersihkan cache:

php artisan optimize:clear

Sebelum mengganti key pada aplikasi production, lakukan beberapa langkah berikut:

  1. Backup file .env.

  2. Simpan key lama dengan aman.

  3. Periksa apakah aplikasi menyimpan data terenkripsi.

  4. Lakukan pengujian terlebih dahulu.

  5. Hindari mengganti key hanya untuk mengatasi cache.

Jangan Membagikan APP_KEY

File .env biasanya berisi informasi penting seperti:

  1. Application key.

  2. Password database.

  3. Konfigurasi email.

  4. API key.

  5. Token layanan.

  6. Informasi server.

Pastikan file .env tidak diunggah ke repository publik.

Periksa file .gitignore dan pastikan terdapat baris:

.env

Gunakan .env.example untuk membagikan contoh konfigurasi tanpa informasi rahasia.

Checklist Mengatasi Error APP_KEY

Gunakan checklist berikut agar lebih mudah melakukan pemeriksaan:

  1. Pastikan file .env tersedia.

  2. Pastikan file .env berada di root Laravel.

  3. Pastikan bagian APP_KEY terisi.

  4. Jalankan perintah dari folder yang memiliki file artisan.

  5. Gunakan versi PHP yang sesuai.

  6. Jalankan php artisan optimize:clear.

  7. Periksa file bootstrap/cache/config.php.

  8. Pastikan file .env dapat dibaca server.

  9. Pastikan website menjalankan project yang benar.

  10. Jangan mengganti key production tanpa backup.

Bantuan Pengembangan Laravel dari Ovla Media

Error No application encryption key has been specified umumnya dapat diselesaikan dengan membuat APP_KEY dan membersihkan cache konfigurasi.

Namun, deployment Laravel juga dapat mengalami masalah lain, seperti:

  1. Vite manifest tidak ditemukan.

  2. Halaman selain beranda menghasilkan error 404.

  3. Storage link tidak berfungsi.

  4. Database tidak terhubung.

  5. Permission folder tidak sesuai.

  6. Session tidak dapat disimpan.

  7. Ekstensi PHP belum tersedia.

  8. Domain tidak mengarah ke folder public.

  9. Aplikasi error setelah pindah hosting.

  10. Versi PHP tidak kompatibel.

Ovla Media menyediakan layanan pengembangan, deployment, perbaikan, dan pemeliharaan aplikasi Laravel yang dapat disesuaikan dengan kebutuhan bisnis.

Kesimpulan

Error “No application encryption key has been specified” terjadi karena Laravel tidak menemukan nilai APP_KEY pada file .env.

Untuk mengatasinya, jalankan:

php artisan key:generate

php artisan optimize:clear

Jika file .env belum tersedia, salin terlebih dahulu:

cp .env.example .env

Pada cPanel, pastikan perintah dijalankan dari folder utama Laravel yang memiliki file artisan, bukan dari folder public_html jika source code berada di lokasi berbeda.

Untuk aplikasi production yang sudah berjalan, jangan mengganti APP_KEY sembarangan karena dapat memengaruhi sesi pengguna dan data yang telah dienkripsi.

#Laravel #No Application Encryption Key #MissingAppKeyException #APP_KEY Laravel #Laravel Error #Cara Mengatasi Error Laravel #Laravel Encryption Key #PHP Artisan #Key Generate Laravel #File ENV Laravel #Laravel Configuration #Laravel Deployment #Laravel cPanel #Shared Hosting Laravel #Cache Laravel #Config Clear Laravel #Web Development #PHP Developer #Laravel Developer Indonesia #Ovla Media #Jasa Laravel #Jasa Perbaikan Laravel
Beranda Produk Artikel
Konsultasi
OVLA

Navigasi Utama

Hubungi Kami

Mulai Konsultasi Sekarang