Renvoyer un code d'erreur HTTP 404 - Apprendre-PHP.com

Rechercher
Anaska - Spécialiste des formations Open-Source

Renvoyer un code d'erreur HTTP 404

ElePHPant El-Roubio

Cette portion de script permet de retourner un véritable code d'erreur 404 lorsqu'un fichier n'est pas trouvé sur le serveur et ne peut être affiché au client. Retourner un header 404 permet notamment au serveur web de logguer les erreurs 404, ce qui est particulièrement utile pour la génération de statistiques via Urchin, AWStats ou OSL. De plus, cela permet de personnaliser ses propres erreurs 404 au moyen de la commande ErrorDocument 404 /erreur404.html dans le fichier .htaccess du site.

Portion de code

Fonction de génération d'un entête HTTP 404
<?php
 
/**
  * La fonction redirectionErreur404() renvoit une véritable erreur 404
  * passée en paramètre.
  *
  * @param : void
  * @return : void
  */
 
function redirectionErreur404()
{
header('HTTP/1.0 404 Not Found');
}
 
/** Exemple d'utilisation **/
if(!file_exists('/pages/mapage.html'))
{
redirectionErreur404();
}
?>

Les commentaires

1. Par Mickaël Wolff le lundi 19 novembre 2007 à 12:12

Il ne faut pas oublier d'envoyer du contenu (include 'page-erreur-404.html' ; par exemple) à l'internaute, afin qu'il ne soit pas perdu devant une page blanche.

2. Par Emacs le lundi 19 novembre 2007 à 13:01

Ca dépend. Si dans le fichier .htaccess, le document 404 par défaut est indiqué, le visiteur sera automatiquement redirigé sur cette page par le serveur. Si ce n'est pas le cas, il faudra faire une redirection vers un 404 avec PHP et la fonction header().

3. Par Paco le samedi 30 août 2008 à 00:12

C'est plus simple avec un htaccess quand meme...enfin en tout cas ca doit être plus rapide?

4. Par Emacs le samedi 30 août 2008 à 02:02

Tu peux modifier la fonction pour y ajouter un chemin de fichier personnalisé avec une redirection (Location). L'avantage de cette fonction c'est que tu peux faire des vrais redirections 404 depuis un script PHP. Ainsi dans les logs par exemple, tu peux différencier les erreurs 404 générées par les utilisateurs et les corriger.

++

Ajouter un commentaire

Votre avis
Se souvenir de mes informations