Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa Laravel Melemparkan Ralat "file_put_contents(): gagal membuka strim: Kebenaran ditolak"?

Mengapa Laravel Melemparkan Ralat "file_put_contents(): gagal membuka strim: Kebenaran ditolak"?

Linda Hamilton
Linda Hamiltonasal
2024-11-05 02:46:01768semak imbas

Why Does Laravel Throw a

Isu Kebenaran Fail dalam Laravel: "file_put_contents() Gagal Membuka Strim"

Menghadapi ralat "file_put_contents(): gagal membuka strim: Kebenaran ditolak" dalam Laravel boleh mengecewakan. Isu ini timbul apabila Laravel tidak dapat menulis ke fail atau direktori tertentu kerana kebenaran fail yang tidak mencukupi.

Direktori storan, tempat Laravel menyimpan log, cache dan data penting lain, sering menyebabkan ralat ini. Untuk menyelesaikannya, mari kita terokai penyelesaian yang berbeza.

Menyelesaikan Isu

Menurut vsmoraes, urutan arahan berikut boleh menyelesaikan isu berkaitan kebenaran:

Untuk Laravel >= 5.4:

<code class="sh">php artisan cache:clear
chmod -R 775 storage/
composer dump-autoload</code>

Untuk Laravel < 5.4:

<code class="sh">php artisan cache:clear
chmod -R 775 app/storage
composer dump-autoload</code>

Arahan ini melaksanakan tugas berikut:

  1. Kosongkan cache aplikasi untuk mengalih keluar sebarang fail cache yang rosak atau lapuk.
  2. Tukar kebenaran direktori storan kepada 775, membenarkan pelayan web menulis kepadanya.
  3. Jalankan Komposer untuk mengemas kini autoloader dan mencerminkan perubahan dalam kebenaran fail.

Sebaik sahaja anda mempunyai melaksanakan arahan ini, ralat "file_put_contents(): failed to open stream: Permission denied" sepatutnya tidak muncul lagi. Jika anda terus menghadapi masalah, semak kebenaran fail fail tertentu dalam direktori storan, seperti fail "meta/services.json" yang disebut dalam soalan anda. Pastikan fail mempunyai kebenaran yang sesuai (cth., 644) untuk membenarkan aplikasi Laravel membaca dan menulis kepadanya.

Atas ialah kandungan terperinci Mengapa Laravel Melemparkan Ralat "file_put_contents(): gagal membuka strim: Kebenaran ditolak"?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn