Aplicar autenticación HTTP básica solo al directorio raíz

Aplicar autenticación HTTP básica solo al directorio raíz

He configurado una aplicación web simple de varios directorios que necesita autenticación solo para el directorio raíz. Todos los demás subdirectorios necesito permitirlos sin contraseña.

Configuré la autenticación básica HTTP usando .htaccess y .htpasswd. Estos archivos se colocan en el directorio raíz de web. Mi problema es que los subdirectorios heredan automáticamente la autenticación.

Sólo necesito aplicar esto sólo para root y mantener todos los subdirectorios abiertos. ¿Cómo puedo hacerlo?

El contenido de mi archivo .htaccess se encuentra a continuación.

AuthType Basic
AuthName "Secure Portal"
AuthUserFile /webroot/.htpasswd
Require valid-user

Respuesta1

No puede hacer esto (fácilmente) con un archivo .htaccess ya que las directivas en .htaccess se aplican al directorio y a todos los directorios debajo de él.

Los archivos .htaccess (o "archivos de configuración distribuidos") proporcionan una forma de realizar cambios de configuración por directorio. Un archivo, que contiene una o más directivas de configuración, se coloca en un directorio de documentos particular y las directivas se aplican a ese directorio y a todos sus subdirectorios.

Supongo que podrías agregar un .htaccess a cada subdirectorio que anule la restricción en la raíz del documento.

información relacionada