У меня проблемы с настройкой парольной защиты в Apache
В .htaccess у меня есть
AuthUserFile /var/www/vhosts/domain.net/httpdocs/.htpasswd
AuthGroupFile /dev/null
AuthName "Test Server"
AuthType Basic
require user testuser
Затем в .htpasswd у меня что-то вроде
testuser:encrypted password
Проблема в том, что я забыл, какой генератор .htpasswd использовал. Когда я пытаюсь добавить нового пользователя и пароль, это не работает. например. когда я положил require user newuser
он всегда терпит неудачу (подсказка продолжает появляться). Затем, когда я вернусь к testuser
оно работает
Как я могу настроить так, чтобы у меня был 1 или несколько «администраторов», которые могут получить доступ ко всему, и зрители, которые могут просматривать только определенные папки ... например
/ - only admins
/folder1 - only admins or folder1's users
/folder2 - only admins or folder2's users
Также что мне делать, чтобы не отображать список каталогов
В require user
Директива позволяет только одному пользователю получить доступ к определенному ресурсу. Чтобы разрешить несколько пользователей, вы должны настроить AuthGroupFile и использовать Require group
директива, разрешающая доступ к ресурсу. Документация apache Вот
/folder1/.htaccess
AuthUserFile /var/www/vhosts/domain.net/httpdocs/.htpasswd
AuthGroupFile /var/www/vhosts/domain.net/httpdocs/.GroupFile
AuthName "Test Group1"
AuthType Basic
require group Group1
/folder2/.htaccess
AuthUserFile /var/www/vhosts/domain.net/httpdocs/.htpasswd
AuthGroupFile /var/www/vhosts/domain.net/httpdocs/.GroupFile
AuthName "Test Group2"
AuthType Basic
require group Group2
и т.п.
Если вы хотите указать несколько групп, тогда
require group Group1 Group2 ...
и в GroupFile
Group1: testuser admin1 admin2
Group2: testuser1 admin1 admin2
.htaccess в корне:
AuthUserFile /var/.htpasswd
AuthName "Test Server"
AuthType Basic
require user admin
Options -Indexes
.htaccess в папке1:
AuthUserFile /var/.htpasswd
AuthName "Test Server"
AuthType Basic
require user admin folder1
.htaccess в папке2:
AuthUserFile /var/.htpasswd
AuthName "Test Server"
AuthType Basic
require user admin folder2