web-dev-qa-db-fra.com

Code HTTP 403, accès refusé et options -Indexes

sur "webmasters.stackexchange.com", j'ai déjà trouvé un sujet similaire: Arrêtez les listes de répertoires à l'aide de .htaccess et redirigez-les vers une bonne page d'erreur

Options -Indexes
ErrorDocument 403 /path/to/403.html

Cependant, je souhaite maintenant faire la distinction entre une demande de liste de répertoires émise OR si l'utilisateur tentait d'accéder à une zone protégée (via htaccess) sans succès.

Les deux tirent un 403, comment savoir quelle est la raison (la liste des répertoires ou le nom htaccess AuthName ...)?

2
user37181

Enfin, cela a fonctionné en insérant une ligne supplémentaire dans le .htacces du dossier protégé (appelez-le private)

ErrorDocument 403 /forbidden-because-of-protection

et dans le root .htaccess je mets la ligne comme

ErrorDocument 403 /forbidden-because-of-directory-listing

Alors maintenant, quand il y a une requête émise comme /private/some/thing/bla, la première règle .htaccess sera appelée - donc redirigeant vers /forbidden-because-of-protection sinon comme si vous demandiez une liste de répertoires (donc pas dans /private), Apache va chercher la deuxième règle.

1
user37181

Une demande de liste de répertoires aura une URL se terminant par /.

Donc, http://example.com/images/ sera un 403 à cause de la liste des répertoires.

http://example.com/private/document.html sera un 403 à cause de votre règle pour le répertoire privé.

1