Maison  >  Article  >  développement back-end  >  Interprétation du code d'état et méthodes de gestion des erreurs correspondantes dans le développement du langage PHP

Interprétation du code d'état et méthodes de gestion des erreurs correspondantes dans le développement du langage PHP

王林
王林original
2023-06-10 15:51:072137parcourir

Dans le développement Web, les codes d'état HTTP sont souvent impliqués et PHP, en tant que langage de programmation Web couramment utilisé, doit également traiter et interpréter les codes d'état. Le code d'état reflète le résultat du traitement de la demande. Une gestion correcte des codes d'état et des messages d'erreur peut aider les développeurs à mieux déboguer le code et à améliorer l'expérience utilisateur.

Cet article présentera les codes d'état qui apparaissent souvent dans le développement du langage PHP et les méthodes de gestion des erreurs correspondantes.

  1. 1xx (code d'état du message)

100 (continuer) : Indique que le client doit poursuivre sa demande.

101 (protocole de commutation) : Indique que le serveur se conformera à la demande du client et passera à un autre protocole. Par exemple, passez au protocole Websocket.

Ces codes de statut ne nécessitent généralement pas de traitement supplémentaire et sont traités automatiquement.

  1. 2xx (code de statut de réussite)

200 (succès) : indique que la demande a été traitée avec succès, couramment utilisée pour les requêtes GET/POST.

201 (Créé) : Indique que la demande a été traitée avec succès et qu'une nouvelle ressource a été créée.

202 (Accepté) : Indique que le serveur a accepté la demande mais n'a pas terminé le traitement. Par exemple, générer des fichiers de rapports qui prennent beaucoup de temps.

204 (pas de contenu) : indique que la demande a été traitée avec succès, mais qu'aucun contenu n'a été renvoyé. Par exemple, après la suppression d'une ressource, un code d'état 204 est renvoyé.

Ce type de code d'état indique généralement des résultats de traitement réussis et aucune gestion d'erreur supplémentaire n'est requise.

  1. 3xx (Code d'état de redirection)

301 (Déplacé de manière permanente) : Indique que la ressource demandée a été définitivement déplacée vers un nouvel emplacement. Généralement utilisé pour la révision de sites Web, le changement de nom de domaine et d'autres opérations.

302 (Déplacement temporaire) : Indique que la ressource demandée a été temporairement déplacée vers un nouvel emplacement. Habituellement utilisé pour des opérations telles que des sauts de page temporaires.

304 (Non modifié) : Indique que la ressource demandée n'a pas été modifiée et peut être obtenue à partir du cache du navigateur. Généralement utilisé pour les ressources statiques.

La gestion de ces codes d'état nécessite généralement une redirection vers une nouvelle URL, ou une vérification du cache, etc.

  1. 4xx (code d'état d'erreur client)

400 (mauvaise demande) : indique qu'il y a une erreur dans la demande, généralement due à des paramètres incorrects, manquants, de format incorrect, etc.

401 (Non autorisé) : Indique que l'utilisateur n'est pas autorisé ou que l'autorisation a expiré. Généralement utilisé pour les opérations nécessitant une connexion.

403 (Interdit) : Indique que l'utilisateur n'est pas autorisé à accéder à la ressource. Généralement utilisé pour des opérations telles que l'échec de l'authentification et le traitement non autorisé.

404 (Not Found) : indique que la ressource demandée n'existe pas. Généralement utilisé pour des opérations telles que l'accès à des pages et des fichiers inexistants.

422 (Impossible de traiter l'entité) : indique que la demande ne peut pas être traitée par le serveur, généralement parce que le format des données de l'entité demandée est incorrect.

Le traitement de ces codes d'état nécessite généralement l'affichage de messages d'erreur pouvant être compris par les utilisateurs, tels que l'affichage de « Aucun droit d'accès » et d'autres invites.

  1. 5xx (code d'état d'erreur du serveur)

500 (erreur du serveur) : indique une erreur interne dans le serveur et la demande ne peut pas être complétée.

502 (Bad Gateway) : indique que le serveur d'applications ne peut pas répondre, cela se produit généralement lors de l'équilibrage de charge. Il doit être vérifié sur des serveurs d'applications tels que nginx.

504 (Gateway Timeout) : indique que le serveur d'applications ne répond pas, apparaissant généralement dans l'équilibrage de charge. Les performances du serveur d'applications doivent être vérifiées.

Ces codes d'état nécessitent généralement des opérations telles que la journalisation des erreurs et le dépannage des problèmes de performances du serveur.

Sur la base de la description du code d'état ci-dessus, nous devons personnaliser la méthode de gestion des erreurs en fonction du code d'état pendant le développement pour rendre le message d'erreur plus convivial et améliorer l'expérience utilisateur. Habituellement, nous pouvons personnaliser la gestion des erreurs en définissant la configuration de htaccess ou nginx.

Par exemple, nous pouvons effectuer les réglages suivants dans .htaccess :

ErrorDocument 404 /404.html

ErrorDocument 500 /500.html

Lorsqu'un code d'état 404 ou 500 apparaît, l'utilisateur sera redirigé vers la page d'erreur personnalisée définie.

Dans le même temps, nous pouvons également utiliser l'opération try...catch pour capturer les exceptions lorsque le programme PHP est en cours d'exécution, et afficher ou enregistrer les informations sur les exceptions.

Résumé : 

Le code d'état est une partie importante du développement Web. Une interprétation et un traitement corrects des codes d'état sont propices à l'optimisation de l'expérience utilisateur et du débogage du code. Les développeurs doivent prêter attention aux utilisations et aux méthodes de traitement des différents codes de statut et gérer les codes de statut avec soin pendant le développement.

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