Rumah > rangka kerja php > Laravel > Bagaimana untuk mengubah suai format output ralat Laravel

Bagaimana untuk mengubah suai format output ralat Laravel

PHPz
Lepaskan: 2023-04-21 10:30:56
asal
831 orang telah melayarinya

Laravel ialah rangka kerja PHP popular yang dipilih oleh ramai pembangun untuk membangunkan aplikasi web. Semasa proses pembangunan, tidak dapat dielakkan bahawa anda akan menghadapi beberapa ralat dan pengecualian. Secara lalai, Laravel akan mengeluarkan maklumat ralat ke log ralat PHP, yang tidak begitu mudah untuk pembangun. Oleh itu, dalam artikel ini kami akan memperkenalkan cara mengubah suai bentuk output ralat Laravel.

  1. Ubah suai fail konfigurasi

Borang output mesej ralat Laravel boleh diubah suai dalam fail konfigurasi. Buka fail .env dalam direktori akar projek dan tukar nilai dalam baris APP_DEBUG kepada true untuk mendayakan mod nyahpepijat Pada masa yang sama, Laravel juga akan mengeluarkan mesej ralat terus ke penyemak imbas.

APP_DEBUG=true
Salin selepas log masuk

Walau bagaimanapun, kaedah ini mempunyai risiko keselamatan. Oleh kerana semua butiran aplikasi didedahkan dalam mod nyahpepijat, ini mungkin memberi penyerang peluang untuk menyerang aplikasi. Oleh itu, dalam persekitaran pengeluaran, mod nyahpepijat hendaklah dilumpuhkan dan nilai APP_DEBUG hendaklah ditukar kepada false.

APP_DEBUG=false
Salin selepas log masuk

Walau bagaimanapun, selepas pengubahsuaian ini, mesej ralat masih tidak boleh dipaparkan di sebelah penyemak imbas, dan tetapan lanjut diperlukan.

  1. Pasang pakej Whoops

Whoops ialah perpustakaan pengendalian ralat PHP yang boleh memaparkan maklumat ralat dengan cara yang lebih cantik. Laravel menyepadukan Whoops secara lalai, tetapi pakej pergantungannya perlu dipasang.

Gunakan Komposer untuk memasang dalam direktori akar projek:

composer require filp/whoops
Salin selepas log masuk

Selepas pemasangan selesai, anda perlu mencantikkan mesej ralat dalam kaedah AppExceptionsHandler kelas render .

use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
use Whoops\Exception\Inspector;
use Whoops\Handler\PrettyPageHandler;

class Handler extends ExceptionHandler
{
    public function render($request, Exception $exception)
    {
        $response = new Response();

        if (config('app.debug')) {
            $whoops = new \Whoops\Run;
            $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler);
            $response->setContent($whoops->handleException($exception));
        } else {
            $response->setContent($this->renderHttpException($exception));
        }

        $response->setStatusCode($this->isHttpException($exception) ? $exception->getStatusCode() : 500);

        $response->exception = $exception;

        return $response;
    }
}
Salin selepas log masuk

Dalam kod di atas, jika aplikasi dalam mod nyahpepijat, pustaka Whoops PrettyPageHandler digunakan untuk pemprosesan pengindahan, jika tidak, tiada pemprosesan dilakukan.

  1. Halaman ralat tersuai

Selain menggunakan perpustakaan Whoops, Laravel juga menyediakan kaedah yang membolehkan pembangun menyesuaikan halaman ralat. Hanya buat fail templat yang berkaitan dalam direktori resources/views/errors.

Sebagai contoh, jika aplikasi menghadapi ralat 404, Laravel akan mencari fail templat dalam resources/views/errors/404.blade.php dan menggunakan fail templat lalai jika ia tidak ditemui.

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>404 Not Found</title>
    </head>
    <body>
        <h1>404</h1>
        <p>Page not found.</p>
    </body>
</html>
Salin selepas log masuk

Dengan cara ini, pembangun boleh menyesuaikan halaman ralat agar lebih sesuai dengan gaya aplikasi.

Ringkasan

Semasa proses pembangunan, mekanisme pelaporan ralat yang lengkap boleh membantu pembangun mencari dan membetulkan ralat dengan lebih cepat. Artikel ini memperkenalkan beberapa kaedah untuk mengubah suai bentuk output ralat Laravel: ubah suai fail konfigurasi, pasang pakej Whoops dan sesuaikan halaman ralat. Melalui kaedah ini, pembangun boleh mencari borang output ralat yang paling sesuai untuk mereka dan meningkatkan kecekapan pembangunan dan kualiti kod.

Atas ialah kandungan terperinci Bagaimana untuk mengubah suai format output ralat Laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan