Maison  >  Article  >  cadre php  >  Comment accéder à 404 dans Laravel

Comment accéder à 404 dans Laravel

PHPz
PHPzoriginal
2023-04-23 09:10:261121parcourir

Laravel est un framework de développement PHP populaire qui facilite la création d'applications Web efficaces. Lors de la création de votre application, vous pouvez rencontrer de nombreuses erreurs HTTP telles que les erreurs 404. Cet article se concentrera sur la façon de rediriger le trafic de votre application Laravel vers une page d'erreur 404 personnalisée.

Laravel fournit par défaut une simple page d'erreur 404 qui contient juste un simple message : "Not Found". Bien que cela soit suffisant pour les sites Web simples, si votre application doit avoir un contenu plus professionnel et personnalisé, vous souhaiterez peut-être personnaliser la page d'erreur 404.

Il existe deux façons de personnaliser la page d'erreur 404 de Laravel : en utilisant Lumen et en utilisant Laravel. Dans ce chapitre, nous expliquerons comment personnaliser une page d'erreur 404 à l'aide de Laravel.

Dans Laravel, toute erreur HTTP, y compris les erreurs 404, peut être effectuée via des gestionnaires. C'est pourquoi vous devez enregistrer un gestionnaire d'erreurs personnalisé dans votre application Laravel avant de modifier la page d'erreur 404.

La première étape consiste à ouvrir le fichier AppExceptionsHandler.php et à trouver la méthode de rendu. Il s'agit du code principal de la tâche, qui est responsable du rendu de l'exception donnée. Par défaut, Laravel utilise des fichiers de vue 404 pour afficher les erreurs 404. Nous pouvons donc remplacer cette méthode et y écrire du code pour afficher une page 404 personnalisée.

Voici un exemple de code pour remplacer la méthode de rendu pour gérer l'erreur 404 et la rediriger vers une page personnalisée :

public function render($request, Exception $exception)
{
    if ($exception instanceof ModelNotFoundException &&
        $request->wantsJson())
    {
        return response()->json([
            'error' => 'Resource not found'
        ], 404);
    }

    if ($exception instanceof NotFoundHttpException) {
        return response()->view('errors.404', [], 404);
    }

    return parent::render($request, $exception);
}

Dans ce code, nous avons d'abord ajouté un cas où si la ressource demandée n'est pas un modèle, renvoie self Defines un message d'erreur au format JSON. Nous ajoutons ensuite une autre condition selon laquelle si une erreur NotFoundHttpException se produit, nous redirigerons vers un fichier de vue 404 personnalisé.

Il est important de se rappeler que nous devons créer des fichiers de vue 404 personnalisés dans le répertoire resources/views/errors afin que Laravel puisse afficher correctement la page personnalisée. Lorsqu'un gestionnaire d'exceptions dans votre code détecte une erreur 404, il sera redirigé vers ce fichier pour le rendu.

En plus de personnaliser la page 404, vous pouvez également personnaliser d'autres pages d'erreur HTTP, telles que les pages 403, 500 ou 503. Utilisez simplement la même approche mais modifiez les conditions dans le gestionnaire d'exceptions en conséquence.

Résumé

Lors du développement d'applications Laravel, la gestion des erreurs HTTP courantes telles que les erreurs 404 est cruciale. Dans cet article, nous avons appris comment personnaliser les pages d'erreur 404 à l'aide de Laravel, notamment en écrivant des gestionnaires d'exceptions personnalisés et en affichant des fichiers. En personnalisant votre page d'erreur 404, vous pouvez facilement optimiser l'expérience utilisateur et améliorer la convivialité de votre application.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn