laravel

Laravel tidak membaca .file env setelah perubahan

Laravel tidak membaca .file env setelah perubahan

Masalah

Yang ini jika masalah yang cukup umum yang muncul di antara pengembang Laravel baru.

Banyak orang telah mencoba untuk memperbarui mereka .env hanya untuk melihat bahwa ketika mereka me-refresh aplikasi mereka, .nilai konfigurasi env tidak muncul.

Dan yang lebih menarik adalah bahwa cukup sering, ini akan muncul setelah Anda mengupgrade versi Laravel Anda.

Jadi misalnya, Anda akan memiliki ini di .file env:

DB_DATABASE=laraveldb
DB_USERNAME=pengguna laravel

Kemudian secara alami, di dalam config/database.php Anda akan memiliki ini:

'mysql' => [
'database' => env('DB_DATABASE', 'lar'),
'nama pengguna' => env('DB_USERNAME', 'lar'),
]

menempa di sini adalah singkatan dari nilai default. Ini berarti bahwa nilai-nilai ini akan digunakan jika Anda belum memberikan DB_DATABASE dan DB_USERNAME nilai-nilai di dalam diri Anda .file env. Informasi ini akan sedikit membantu.

Sekarang, bagaimana Anda tahu bahwa Anda memiliki masalah khusus ini adalah jika Anda mengalami pengecualian berikut:

PDOException: SQLSTATE[HY000] [1045] Akses ditolak untuk pengguna 'lar'@'localhost'
(menggunakan kata sandi: TIDAK)

Ini dengan jelas menunjukkan bahwa aplikasi Laravel Anda menarik nilai default dari . Anda konfigurasi/basis data.php file dan bukan dari Anda .env .

Sebelum melakukan hal lain, Anda juga dapat mencoba memverifikasi masalah ini menggunakan php artisan tinker juga:

>>> env('DB_DATABASE')
=> nol
>>> getenv('DB_DATABASE')
=> salah
>>> config('database.koneksi.mysql.basis data')
=> "lar"
>>> dd($_ENV)
[]

Anda akan sering melihat bahwa melakukan hal berikut juga tidak akan membuat perbedaan. Namun, pengembang mencoba menguji konfigurasi mereka dengan menjalankan instalasi Laravel yang benar-benar baru dan hanya menyalin folder aplikasi lama. Mereka tidak menjalankan instalasi paket komposer atau melakukan hal lain.

Kecuali Anda menggunakan Linux (saya akan memberi tahu Anda alasannya nanti), Anda tidak akan melihat perubahan apa pun.

Larutan

Seperti biasa, ada banyak hal yang dapat Anda lakukan untuk mencoba memecahkan masalah ini, tetapi beberapa di antaranya lebih mungkin berhasil.

Hapus cache konfigurasi Anda

Pertama, jika belum, Anda harus menghapus cache konfigurasi Anda sebelum dapat melakukan hal lain.

Karena kode kami menggunakan begitu banyak perpustakaan saat ini, kami terpaksa men-cache sesuatu untuk membuat akses cepat ke sana selama runtime.

Saya pribadi memiliki masalah dengan ini di Windows dan Mac, namun, saya perhatikan bahwa untuk beberapa alasan, di Linux (Ubuntu) file konfigurasi ini dihapus dengan semacam pengait atau tidak di-cache sama sekali, karena saya bisa muat ulang aplikasi dengan yang baru .nilai env tanpa melakukan hal berikut:.

Pastikan Anda menghapus cache konfigurasi dengan menjalankan perintah berikut:

php artisan config: cache
php artisan config:clear

Periksa ruang kosong di dalam . Anda .file env

Solusi berikutnya adalah dalam hal memiliki ruang putih di dalam . Anda .file env. Dan yang ini jika kebanyakan orang gagal dan mulai merobek rambut mereka.

Sangat mudah untuk melewatkan ini tetapi sebagai contoh apa yang bisa Anda miliki di in .env file adalah sesuatu seperti ini:

SITE_NAME=Aplikasi Laravel Saya

Ini saja tidak akan berfungsi karena spasi putih akan merusak .file env.

Yang perlu Anda lakukan adalah membungkus nilai Anda di dalam tanda kutip seperti ini:

SITE_NAME=”Aplikasi Laravel Saya”

Kali ini semuanya harus bekerja dengan baik.

Pastikan untuk menghapus cache konfigurasi Anda setiap kali Anda melakukan perubahan. Kita bisa melakukan ini sama seperti sebelumnya:

php artisan config: cache
php artisan config:clear
Kursor melompat atau bergerak secara acak saat mengetik di Windows 10
Jika Anda menemukan bahwa kursor mouse Anda melompat atau bergerak sendiri, secara otomatis, acak saat mengetik di laptop atau komputer Windows, maka ...
Cara membalikkan arah gulir Mouse dan Touchpads di Windows 10
Mouse dan Panel sentuhs tidak hanya membuat komputasi menjadi mudah tetapi juga lebih efisien dan tidak memakan banyak waktu. Kami tidak dapat membaya...
Cara mengubah penunjuk Mouse dan ukuran kursor, warna & skema pada Windows 10
Penunjuk mouse dan kursor di Windows 10 adalah aspek yang sangat penting dari sistem operasi. Ini dapat dikatakan untuk sistem operasi lain juga, jadi...