Bonjour,
Je m'occupe de plusieurs sites web (virtualhost) et j'ai mis en place dans la configuration d'Apache la gestion des erreurs :
Dans un des sites je dois mettre en place une authentification, j'ai donc ajouté dans le répertoire à sécuriser un fichier .htaccess :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <VirtualHost <IP du serveur>> <Directory /etc/httpd/vhosts-test/*/web/docs> ErrorDocument 400 /erreur.php ErrorDocument 401 /erreur.php ErrorDocument 403 /erreur.php ErrorDocument 404 /erreur.php ErrorDocument 500 /erreur.php </Directory> </VirtualHost>
La gestion des erreurs fonctionne trés bien cepandant lorsque j'accède au répertoire sécurisé, la fenêtre d'authentification ne s'affiche pas et j'ai directement une erreur 401.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Satisfy any order deny,allow deny from all AuthName "Statistiques" AuthType Basic AuthUserFile /usr/local/www/pass require user admin
En cherchant sur le forum et dans la doc d'Apache j'ai lu que dans mon cas la redirection des erreurs 401 ne pouvaient se faire que sur une page locale, or ma redirection est bien locale puisque pour la directive ErrorDocument 401 j'ai /erreur.php et non http://monsite/erreur.php.
En fait je ne comprend pas trop ce que veut dire : "La page d'erreur doit rester locale"
Pouvez-vous me donner des détails s'il vous plait car je ne vois pas comment enlever l'erreur si ce n'est en supprimant la directive ErrorDocument 401.
Je vous remercie par avance
Partager