Bonsoir, j'ai voulus me faire un pti script perso pour gèrer mes pages d'erreur apache.
J'ai donc mis ceci dans un .htaccess a la racine
Le script php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 ErrorDocument 400 ./nofile.php?400 ErrorDocument 401 ./nofile.php?401 ErrorDocument 402 ./nofile.php?402 ErrorDocument 403 ./nofile.php?403 ErrorDocument 404 ./nofile.php?404 ErrorDocument 405 ./nofile.php?405 ErrorDocument 500 ./nofile.php?500 ErrorDocument 501 ./nofile.php?501 ErrorDocument 502 ./nofile.php?502 ErrorDocument 503 ./nofile.php?503 ErrorDocument 504 ./nofile.php?504 ErrorDocument 505 ./nofile.php?505
Alors si je clique sur une page qui n'existe pas j'ai une page blanche avec l'url que j'ai demandé + ce texte "./nofile.php?404"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 <?php if(isset($_GET['400'])){ echo 'Echec de l\'analyse HTTP'; redirection($page); } elseif(isset($_GET['401'])){ echo "Le pseudo et/ou le mot de passe n'est pas correct !". '<b style="color:blue">Vous allez être rediriger dans quelques secondes</b>'; redirection($page); } elseif(isset($_GET['402'])){ echo 'Le client doit reformuler sa demande avec les bonnes donnes de paiement.'; } elseif(isset($_GET['403'])){ echo 'Requête interdite !<br/>'. '<b style="color:blue">Vous allez être rediriger dans quelques secondes</b>'; redirection($page); } elseif(isset($_GET['404'])){ echo "La page n'existe pas ou n'existe plus !<br/>". '<b style="color:blue">Vous allez être rediriger dans quelques secondes</b>'; redirection($page); } elseif(isset($_GET['405'])){ echo 'Méthode non autorise'; } elseif(isset($_GET['500'])){ echo 'Erreur interne au serveur ou serveur saturé'; } elseif(isset($_GET['501'])){ echo 'Le serveur ne supporte pas le service demandé'; } elseif(isset($_GET['502'])){ echo 'Mauvaise passerelle'; } elseif(isset($_GET['502'])){ echo ' Service indisponible'; } elseif(isset($_GET['503'])){ echo 'Service indisponible'; } elseif(isset($_GET['504'])){ echo 'Trop de temps pour la réponse '; redirection($page); } elseif(isset($_GET['505'])){ echo 'Version HTTP non supporte '; } else{ echo 'Erreur !!'; } ?>
C'est quand même bizarre normalement sa devrais renvoyer vers la page nofile et indiquer le message correspondant a l'erreur.
Alors si je vire le point "./nofile.php?404" devant le slash dans le htaccess sa ne fonctionne plus et renvoi le message classique d'apache
Une idée, je précise que je suis sous windows car sous nunux c'est tt différent![]()
Partager