Laravel ialah rangka kerja PHP yang sangat popular yang digunakan secara meluas dalam pembangunan aplikasi web. Rangka kerja Laravel menyediakan cara yang mudah digunakan untuk mencipta dan mengurus aplikasi web, menjadikan pembangunan PHP berfungsi lebih cekap, lebih mudah dan menyeronokkan. Walau bagaimanapun, beberapa ralat dan pengecualian akan berlaku dengan mana-mana rangka kerja, dan rangka kerja Laravel tidak terkecuali. Artikel ini akan memperkenalkan cara memaparkan pengecualian ralat 500 dalam rangka kerja Laravel.
Ciri rangka kerja Laravel ialah ia menyembunyikan semua maklumat pelaporan ralat secara lalai untuk melindungi privasi dan keselamatan aplikasi. . Oleh itu, jika anda ingin melihat butiran ralat 500, anda perlu mengesahkan sama ada rangka kerja Laravel mendayakan pelaporan ralat. Buka fail konfigurasi config/app.php, cari item konfigurasi nyahpepijat dalam fail dan pastikan nilainya adalah benar, seperti yang ditunjukkan di bawah:
'debug' => env('APP_DEBUG', true),
Jika nilai item konfigurasi ini palsu, anda perlu untuk menukarnya kepada benar bermakna menghidupkan pelaporan ralat.
Jika rangka kerja Laravel telah mendayakan pelaporan ralat, tetapi maklumat pengecualian ralat masih tidak dipaparkan pada halaman, anda boleh melihat ralat fail log laporan storan rangka kerja Laravel/logs/laravel.log. Fail log ini merekodkan semua maklumat ralat rangka kerja, termasuk 500 pengecualian ralat.
Anda boleh membuka fail log, melihat maklumat log terkini dan mencari maklumat laporan ralat yang berkaitan. Sebagai contoh, jika anda menghadapi ralat pengecualian "MethodNotAllowedHttpException", anda boleh mencari kata kunci ini dalam fail log untuk mencari butiran pengecualian.
[2021-10-01 14:27:59] local.ERROR: MethodNotAllowedHttpException in file /var/www/html/laravel-app/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php on line 255 {"exception":"[object] (Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException(code: 0):...
Jika tiada kaedah di atas dapat menyelesaikan masalah, anda boleh memaparkan halaman penyahpepijatan ralat dalam rangka kerja Laravel untuk mendapatkan lebih banyak ralat maklumat. Operasi khusus adalah seperti berikut:
Dayakan laravel-debugbar (pasang debugbar: composer require barryvdh/laravel-debugbar --dev
, dan kemudian tambah ServiceProvider dalam config/app.php):
'providers' => [ IlluminateValidationValidationServiceProvider::class, IlluminateViewViewServiceProvider::class, //添加调试面板服务提供者类 BarryvdhDebugbarServiceProvider::class, ],
Tetapkan APP_DEBUG=true dalam .env fail .
Tambah dalam kaedah laporan app/Exceptions/Handler.php:
if ($this->shouldReport($exception)) { //开启调试面板 app('debugbar')->enable(); }
Kemudian lawati aplikasi dan anda akan melihat halaman maklumat ralat terperinci. Jika anda menggunakan persekitaran pembangunan setempat, halaman mesej ralat akan mengandungi semua maklumat penyahpepijatan, termasuk surih tindanan, maklumat permintaan dan tindak balas, log pertanyaan SQL, dsb.
Dalam proses membangunkan aplikasi web, 500 ralat adalah pengecualian biasa, tetapi mendiagnosis dan membetulkannya dalam rangka kerja Laravel bukanlah kesukaran. Melalui kaedah yang disediakan dalam artikel ini, anda boleh cuba mencari dan membetulkan masalah dengan membuka laporan ralat, melihat log ralat dan membuka halaman penyahpepijatan ralat. Sudah tentu, sebaik sahaja masalah itu diselesaikan, pelaporan ralat juga harus dimatikan untuk memastikan keselamatan dan privasi aplikasi.
Atas ialah kandungan terperinci ralat laravel 500 bagaimana untuk memaparkan pengecualian ralat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!