[Apache] Gestion des erreurs - Définir le fichier qui génère l'erreur

:hello:

j’ai mis dans mon .htaccess

ErrorDocument 404 http://www.team-zog.net/404.htm
ErrorDocument 403 http://www.team-zog.net/403.htm

Donc les erreurs sont bien redirigées.
vous pouvez essayer avec http://www.team-zog.net/images/ qui donne une 403.

Par contre moi j’aimerais définir à partir que quelle url le visiteur a eu cette erreur.
Par exemple si quelqu’un tombe sur un 404, c’est qu’il a surement cliqué sur un broken link, il me faudra corriger ce lien. mais pour corriger le lien, il faut bien que je sache qu’il existe.

Donc comment faire pour trouver le fichier qui a généré cette erreur ?

j’ai essayé

<?php
echo $_SERVER['HTTP_REFERER'];
?>

(à savoir que 404.htm est en fait 404.php, url rewriting :slight_smile: )

Mais ça je fonctionne pas.

Je pensais faire quelque chose du genre :

ErrorDocument 404 http://www.team-zog.net/404.php?page=$1

Où $1 est la page qui donne une erreur, mais ça ne fonctionne pas.

Alors comment faire ? :pt1cable:

Tout simplement request_uri. Fait un phpinfo() dans ton erreur 404.

http://www.system-tek.com/nwinter/nwn/aaa

Ca doit être $_SERVER[‘REQUEST_URI’] ou un truc du genre.

le $_SERVER[‘REQUEST_URI’] me retourne 404.htm, soit la page affichée à l’instant.

puiske chaque 404 redirige vers 404.htm, et ne fait pas comme chez toi, où l’url reste la même. comment tu a fait toi pour que l’url ne change pas ?

Atta. Comme toi, sauf que c’est un chemin relatif (/nwinter/404.php, etc).

[edit] ça t’amuse d’envoyer un mail pour une erreur 404 fictive? :o

Alors pourquoi moi c’est redirigé et pas toi ?

c’était pour tester :o ^^

Hop :

ErrorDocument 404 /~nwinter/error404.php
ErrorDocument 403 /~nwinter/error404.php

C’est ce que j’ai dans mon htaccess.

tiens ça marche déjà un peu mieux.

je vais faire des test et je re