Comment puis-je retourner le bon code de statut HTTP pour ma page d’erreur 404 ?

Une page d’erreur 404 est tout simplement un document HTML qu’on peut concevoir comme on le souhaite.

Code source : texte HTML d’une page d’erreur 404

Code source : texte HTML d’une page d’erreur 404

Avec une page d’erreur sur-mesure, il faut s’assurer que le bon code de statut HTTP est retourné. Dans notre exemple, le Code de statut HTTP est « 404 ».

Nous retournons le Code de statut HTTP souhaité à l’aide du code PHP suivant :

<?php
header("HTTP/1.0 404 Not Found");
?>

Si ton PHP n’est pas exécuté via un module Apache sur ton serveur, mais en FastCGI, le « HTTP/1.0 » dans le code PHP doit être remplacé par « Status: ».

Nous ajoutons donc ces trois lignes de code PHP tout au début du texte HTML du document :

Code source : texte HTML d’une page d’erreur 404 avec le bon code de statut HTTP

Code source : texte HTML d’une page d’erreur 404 avec le bon code de statut HTTP

Pour être certain que le code PHP est correctement interprété, nous changeons l’extension du fichier de .html en .php. Le document est alors une page PHP classique, aux yeux du serveur.

Pour la dernière étape, nous devons référencer la localisation de notre page 404 dans le fichier .htaccess.

Nous ajoutons le code suivant sur une ligne vide du fichier .htaccess :

ErrorDocument 404 /directory/404.php

S’il n’existe pas encore de fichier .htaccess dans le répertoire racine de l’hébergeur, il peut être créé facilement.

24.07.2019