¿Cómo evito la exploración de directorios para todos los usuarios excepto los válidos en .htaccess?

¿Cómo evito la exploración de directorios para todos los usuarios excepto los válidos en .htaccess?

Me gustaría permitir la exploración de directorios para los usuarios que iniciaron sesión mediante la autenticación HTTP básica, pero impedirla para los usuarios anónimos. ¿Hay alguna manera de hacer esto usando .htaccess?

Respuesta1

RewriteEngine on
RewriteCond %{REMOTE_USER} =""
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_FILENAME}/index.html !-f
RewriteCond %{REQUEST_FILENAME}/index.php !-f
RewriteRule .? - [F,L]

Tendrás que encadenar tantos index.footipos como utilices.

Esto supone que por "usuario que ha iniciado sesión" se refiere a alguien que inició sesión utilizando la autenticación HTTP BÁSICA. Si te refieres a que alguien inició sesión en un mecanismo de autenticación personalizado, necesitarás conectar un mapa de reescritura, lo que probablemente no valga la pena; en ese momento puse un index.fooen todos mis directorios que verificaba mi autenticación personalizada y enviaba un índice o no, dependiendo.

Respuesta2

http://httpd.apache.org/docs/2.0/howto/htaccess.html

Explica exactamente cómo hacer eso. El parámetro Requerir será lo que desea ver.

información relacionada