====== Чтобы работали файлы **.htaccess** необходимо в конфигурационном файле ======
///etc/apache2/apache2.conf//
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
привести к виду
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
При этом нужно учитывать, что большое количество файлов **.htaccess** может замедлить работу сервера.
====== Примеры файлов .htaccess ======
Для ограничения доступа к выбранной директории скопируйте эти строчки в ваш **.htaccess** файл:
AuthType Basic
AuthName "Thats protected Area!"
AuthUserFile /usr/host/mysite/.htpasswd
Require valid-user
deny from all #запрет доступа из браузера к .htpasswd
Для запрета доступа только к файлу //private.zip// скопируйте эти строчки в ваш **.htaccess** файл:
AuthType Basic
AuthName "Thats protected Area!"
AuthUserFile /usr/host/mysite/.htpasswd
Require valid-user
deny from all #запрет доступа из браузера к .htpasswd
Обратите внимание что файлы **.htaccess** и **.htpasswd** должны быть сохранены в __unix-формате__. Например, в Far Manager этого можно достичь если в режиме редактирования файла нажать комбинацию Shift+F2 и в появившемся меню выбрать “в формате UNIX (LF)”.
====== Директивы и описание файла .htaccess, используемые для ограничения доступа ======
* AuthType - Тип используемой аутентификации. Для базовой аутентификации эта директива должна иметь значение: Basic
* AuthName - Имя области действия аутентификации. Текст, помогающий посетителю понять, куда он пытается получить доступ. Например, может быть написано: "Private zone. Only for administrator!"
* AuthUserFile - полный путь к файлу с паролями (.htpasswd). Относительные пути работать не будут.
* AuthGroupFile - путь к файлу групп, если он существует.
* Require - Одно или несколько требований, которые должны быть выполнены для получения доступа к закрытой области.
- require valid-user — разрешен доступ всем прошедшим проверку
- require user admin alex mango — разрешен доступ только посетителям с именами admin, alex, mango. Естественно, они должны пройти аутентификацию.
- require group admins - разрешен доступ всем пользователям из группы admins
====== Файлы групп ======
Если к защищаемой области сайта должна иметь доступ группа людей, то удобно объединить людей в группы, и разрешать доступ, определяя принадлежность пользователей к группе.
Формат файла групп - это текстовый файл, каждая строка, которого описывает отдельную группу. Первым в строке должно идти название группы с двоеточием. А затем через пробел перечисляются посетители, входящие в группу.
====== Пример файла групп ======
Admins: admin alex mango
Users: guest user max23
В группу Admins входят посетители с именами admin, alex, mango. А группу Users входят посетители с именами guest, user, max23.
====== Примеры .htaccess с группами ======
Пример файла .htaccess для доступа всем пользователям, прошедшим авторизацию
AuthType Basic
AuthName "Private zone. Only for administrator!"
AuthUserFile /usr/host/mysite/.htpasswd
require valid-user
Пример файла .htaccess для доступа только пользователям admin и root
AuthType Basic
AuthName "Private zone. Only for administrator!"
AuthUserFile /usr/host/mysite/.htpasswd
require user admin root
Доступ только пользователей из группы admins
AuthType Basic
AuthName "Private zone. Only for administrator!"
AuthUserFile /usr/host/mysite/.htpasswd
AuthGroupFile /usr/host/mysite/group
require group admins
[[https://htmlweb.ru/service/htpasswd.php|Источник]]