Vraie 404.

WRInaute passionné
Bonjour,

Aujourd'hui, je fais un tour d'horizon de mon back pour m'assurer qu'on ne puisse pas y entrer si facilement que ça..

donc j'ai un index.php dans tous mes répertoires, dans lesquels j'ai mis ceci
Code:
<?php
header("HTTP/1.1 404 Not found");
header("Status: 404 Not found");
header('location: http://www.monsite.com'); 
?>

Par contre, l'entête retournée est celle-ci :

HTTP/1.1 302 Found
Date: Tue, 26 Jun 2007 13:07:06 GMT
Server: Apache/1.3.37 (Unix) mod_gzip/1.3.19.1a PHP/5.2.3 mod_ssl/2.8.28 OpenSSL/0.9.6m
X-Powered-By: PHP/5.2.3
Status: 404 Not found
location: http://www.monsite.com
Connection: close
Content-Type: text/html
on est bien avancés : j'aimerais pas que ça me renvoie exactement la même 404 que pour les dossiers qui n'existent vraiment pas, that's to say :
HTTP/1.1 404 Not Found
Date: Tue, 26 Jun 2007 13:14:20 GMT
Server: Apache/1.3.37 (Unix) mod_gzip/1.3.19.1a PHP/5.2.3 mod_ssl/2.8.28 OpenSSL/0.9.6m
X-Powered-By: PHP/5.2.3
Status: 404 Not Found
Set-Cookie: PHPSESSID=34146cc0ad535f4db96f1822e94f7f6c; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Connection: close
Content-Type: text/html

comment faire ?

merci de votre aide.
 
WRInaute passionné
j'ai réussi :
Code:
header("HTTP/1.1 404 Not found");
header("Status: 404 Not found");
//header("location: http://www.monsite.com"); 
header("Set-Cookie: PHPSESSID=34146cc0ad535f4db96f1822e94f7f6c; path=/");
header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache ");
require "http://www.monsite.com/erreur.php";

que pensez-vous de cette méthode ? => même comportement qu'une vraie 404 (dont la page d'affichage est gérée par le htaccess)

en fait, ça permet de ne faire aucune distinction entre ceux qui existent mais qu'on ne veut pas faire existent et les dossiers qui n'existent vraiment pas..
 
WRInaute discret
Il faudrait mettre le vrai PHPSESSID plutôt que "34146cc0ad535f4db96f1822e94f7f6c". Je ne sais plus comment il se récupère.
La date et l'heure sont fixes ?
 
WRInaute passionné
Archaos-JdR a dit:
Il faudrait mettre le vrai PHPSESSID plutôt que "34146cc0ad535f4db96f1822e94f7f6c". Je ne sais plus comment il se récupère.
La date et l'heure sont fixes ?
je suis d'accord pour le PHPSESSID, j'ai pas trouvé rapidement comment faire donc j'ai fait comme ça et l'heure semble être fixe..
 
WRInaute accro
Szarah a dit:
La vraie 404 est là, 'y a pas photo. Ou plutôt si :)
Oki, je :arrow: []

C'est amusant, en lisant le titre du post, je me disais que ce serait amusant d'ajouter une photo de 404 à ma page du même nom....
 
WRInaute passionné
jarreweb a dit:
il faut utiliser ceci
header("HTTP/1.1 404 Not Found", false, 404);
header("Status: 404 Not Found", false, 404);

https://www.webrankinfo.com/referencemen ... pt-serveur
lire la remarque après le 1er tableau bleu
bien vu, c'est en fait, le deuxième et / ou le troisième paramètre de header() qui sont intéressants, le deuxième forçant le status pour le http_response_code, et le troisième le spécifiant si on veut mettre un statut différent (autre que 404..)
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut