Я установил простое веб-приложение с несколькими каталогами, которое требует аутентификации только для корневого каталога. Все остальные подкаталоги мне нужно разрешить без пароля.
Я установил базовую аутентификацию HTTP с использованием .htaccess и .htpasswd. Эти файлы помещаются в корневой каталог сети. Моя проблема в том, что подкаталоги автоматически наследуют аутентификацию.
Мне просто нужно применить это только для root и оставить все подкаталоги открытыми. Как мне это сделать?
Ниже приведено содержимое моего файла .htaccess.
AuthType Basic
AuthName "Secure Portal"
AuthUserFile /webroot/.htpasswd
Require valid-user
Вы не можете сделать это (легко) с файлом .htaccess, поскольку директивы в .htaccess применяются к каталогу и всем каталогам под ним.
Файлы .htaccess (или «файлы распределенной конфигурации») позволяют вносить изменения в конфигурацию для отдельных каталогов. Файл, содержащий одну или несколько директив конфигурации, помещается в конкретный каталог документа, и директивы применяются к этому каталогу и всем его подкаталогам.
Я думаю, вы могли бы добавить .htaccess в каждый подкаталог, который отменяет ограничение в корне документа.