Maison  >  Article  >  développement back-end  >  Pourquoi mon code PHP ne parvient-il pas à afficher une page d'erreur 404 ?

Pourquoi mon code PHP ne parvient-il pas à afficher une page d'erreur 404 ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-11 03:27:03577parcourir

Why Does My PHP Code Fail to Display a 404 Error Page?

Gestion des erreurs HTTP 404 en PHP

Question :Pourquoi le code PHP suivant ne parvient-il pas à générer une erreur 404 page ?

if (strstr($_SERVER['REQUEST_URI'],'index.php')) {
    header('HTTP/1.0 404 Not Found');
}

Réponse :Le code envoie techniquement un en-tête 404, mais l'utilisateur reçoit une page vierge car :

  • 404 traditionnel Gestion : Les serveurs Web gèrent généralement les 404 en redirigeant vers une page 404 personnalisée.
  • Remplacement PHP : Une fois le traitement PHP commencé, le serveur ne peut plus gérer les 404. Le code PHP doit générer et afficher lui-même la page 404.

Dans ce cas, le code PHP envoie uniquement l'en-tête 404 mais ne fournit pas le contenu réel de la page 404. Pour résoudre ce problème, vous devez également afficher la page 404. Par exemple :

if (strstr($_SERVER['REQUEST_URI'],'index.php')) {
    header('HTTP/1.0 404 Not Found');
    echo "<p>Page not found</p>";
}

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