EduChannel Indonesia Blog WeBooks LMS Pembelajaran Video
  • Pencarian
Versi

  • Informasi Buku
  • Pengantar
    • Pengenalan
    • Riwayat Rilis
  • Persiapan
    • Instalasi
    • Konfigurasi
    • Membuat Autentikasi
    • Optimalisasi Laravel
  • Fungsi Dasar
    • Penjaluran
    • Controller
    • View
    • Model
    • Midleware
    • Proteksi CSRF
    • Requests
    • Responses
    • Blade Template
    • Session
    • Validasi
    • Membuat Log

Konfigurasi

Dokumentasi dan Tutorial Laravel 9.x Bahasa Indonesia; Diperbarui tanggal: 9/09/2025

Konfigurasi

# Introduction / Pendahuluan

Setiap file konfigurasi laravel disimpan dalam folder config dimana setiap opsi configurasi telah disediakan panduannya untuk mempermudah dalam melakukan konfigurasi. Setiap file konfigurasi memungkinkan untuk mengkonfigurasi hal-hal seperti: konfigurasi database, konfigurasi email server, zona waktu, kunci enkrip dan lain sebagainya.

# Environment Configuration / Konfigurasi Server

Untuk memudahkan dalam melakukan konfigurasi yang berbeda berdasarkan lingkungan/server, laravel menggunakan libray dotENV PHP dimana pada saat baru pertamakali di install pada folder laravel akan terdapat file .env.example yang berisi variabel-variabel secara umum yang sering digunakan yang nantinya harus kita isi. File .env.example dapat secara otomatis tersalin menjadi  .env. pada saat proses instalasi atau pengembang juga dapat menyalin file ini secara manual menjadi .env pada saat mengembangkan aplikasi di komputer local.

Konfigurasi file .env sebaiknya dibedakan pada saat proses pengembangan di komputer local dan pada saat di upload di web server untuk masalah faktor keamanan. Selain itu file .env.example sebaiknya terus disertakan pada saat mengembangkan aplikasi dalam tim dengan tujuan untuk memudahkan anggota tim lain melihat konfigurasi. 

# Keamanan File Environment

File .env tidak boleh dikomit ke kontrol sumber aplikasi (pada proses pengembangan aplikasi menggunakan git), karena setiap pengembang atau server kemungkinan besar memerlukan konfigurasi lingkungan yang berbeda. Selain itu, hal ini akan meningkatkan risiko keamanan apabila terdapat penyusup yang mendapatkan akses ke repositori kontrol sumber aplikasi, karena setiap informasi sensitif apa pun akan terekspos.

# Tipe Variabel Environment

Seluruh variabel dalam file .env pada umumnya diuraikan dalam tipe string. Beberapa variabe mungkin akan diubah ke dalam tipe lain sesuai dengan fungsi dari konfigurasi .env() seperti true atau false akan di konversi menjadi tipe boolean. Jika nilai variabel environment mengandung spasi gunakan tanda petik dua (") diawal dan diakhir variabel:

APP_NAME="My Application"

# Pembacaan Konfigurasi Environment

Seluruh variabel dalam file konfigurasi pada folder config akan di muat dalam fungsi $_ENV PHP super-global pada saat aplikasi diakses dan untuk memudahkan dalam pengaturan kita dapat menggunakan bantuan dari env helper. Sebagai contoh dalam file app.php pada folder config terdapat pengaturan

'debug' => (bool) env('APP_DEBUG', false),

menunjukkan bahwa variabel 'debug' akan mengambil nilai dari variable APP_DEBUG pada file .env terlebih dahulu, namun jika variable APP_DEBUG tidak ditemukan pada file .env maka nilainya akan manjadi false.

# Configuration Caching

Untuk mempercepat prosess/loading pada saat mengakses aplikasi atau website kita dapat menggunakan opsi config:chache pada peritah php artisan. Fungsi ini akan menggabungkan seluruh file konfigurasi menjadi satu file sehingga menjadi lebih cepat untuk diakses.

php artisan config:chache 

Gunakan diatas pada saat aplikasi telah selesai dikembangkan dan diunggah diserver. Jangan gunakan perintah tersebut pada saat masih dalam tahap mengembangkan aplikasi karena kemungkinan besar konfigurasi akan terus berubah.

Untuk mengembalikan atau membatalkan peritah config:chache kita dapat menggunakan opsi clear:chache pada peritah php artisan.

php artisan clear:chache 

 

# Debug Mode 

Konfigurasi debug pada file config/app.php digunakan untuk menampilkan seberapa banyak informasi kesalahan akan ditampilkan kepada pengguna. Atur nilai variabel APP_DEBUG menjadi false atau true pada file .env. Pada saat pengembangan kita dapat menggunakan opsi true agar memudahkan dalam menelusuri kesalahan kode/error code pada saat pengembangan.

APP_DEBUG=true 

Pada saat produksi ganti nilai variabel APP_DEBUG menjadi false terutama pada saat aplikasi sudah diupload di web server. Pastikan variabel APP_DEBUG tidak bernilai true pada saat produksi untuk mengurangi resiko terbukanya informasi sensitif kepada pengunjung aplikasi. 

 

# Maintenance Mode / Mode Pemeliharaan

Pada saat pemeliharaan aplikasi, anda dapat menonaktifkan aplikasi dengan mengarahkan semua permintaan ke halaman tertentu untuk memudahkan dalam melakukan update atau perbaikan. Pada saat aplikasi dalam model perbaikan maka Symfony\Component\HttpKernel\Exception\HttpException akan ditampilkan dengan kode status 503.

Status pemeliharaan/maintenance dapat dijalankan dengan peritah artisan down

 php artisan down

Jika anda ingin mengirimkan perintah Refresh HTTP header pada semua halaman dalam mode pemeliharaan. Jika anda ingin memberikan perintah refresh pada saat mode maintance setiap detik tertentu, anda dapat menambahkan opsi --refresh pada saat menjalankan perintah artisan down. 

php artisan down --refresh=15

Anda juga dapat memberikan opsi rentry pada perntah down yang akan mengirimkan perintah rentry-after HTTP Header.

php artisan down --retry=60

# Bypassing Maintenance Mode / Bypass Mode Pemeliharaan

Untuk melakukan bypass pada saat pemeliharaan kita dapat menggunakan opsi secret dengan menyertakan token/kode rahasia pada perintah down.

php artisan down --secret="1630542a-246b-4b66-afa1-dd72a4c43515"

Setelah mejalankan peritah diatas, selanjutnya kita dapat mengakses aplikasi pada web browser dengan menggunakan token yang kita daftarkan sebelumnya agar laravel dapat membuat sebuah cookie bypass mode pemeliharaan.

https://example.com/1630542a-246b-4b66-afa1-dd72a4c43515 

Pada saat mengakses aplikasi melalui token tersebut, kita akan di arahkan ke route / , selanjutnya kita dapat mengakses aplikasi seperti biasanya seolah-olah sedang tidak dalam mode pemeliharaan.

# Redirecting Maintenance Mode Requests / Mengarahkan Ke Halaman Maintenace

Pada saat dalam mode pemeliharaan, semua url akan menampilkan halaman mode pemeliharaan. Namun kita ingin mengarahkan ke halaman tertentu kita dapat menambahkan opsi redirect. sebagai contoh misalnya kita ingin mengarahkan ke halaman /maintenance maka kita dapat menggunakan perintah:

php artisan down --redirect=/maintenance

# Disabling Maintenance Mode / Menonaktifkan Mode Pemeliharaan

Untuk menonaktifkan mode pemeliharaan kita dapat menggunakan opsi up pada peritah down artisan.

php artisan up

# Maintenance Mode & Queues

Pada saat dalam mode pembelaharaan, maka proses queuses akan berhenti dan akan bekerja kembali setelah mode pemeliharaan selesai.

 

Copyright ©2022 #EduChannel Indonesia.
Bali - Indonesia