Инструменты пользователя

Инструменты сайта


htaccess

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
htaccess [2021/01/04 21:55]
dja создано
htaccess [2021/01/05 10:57] (текущий)
dja
Строка 1: Строка 1:
-Чтобы работали файлы .htaccess необходимо в конфигурационном файле +====== Чтобы работали файлы **.htaccess** необходимо в конфигурационном файле ====== 
-/etc/apache2/apache2.conf+///etc/apache2/apache2.conf//
 <code><Directory /var/www/> <code><Directory /var/www/>
         Options Indexes FollowSymLinks         Options Indexes FollowSymLinks
Строка 12: Строка 12:
         Require all granted         Require all granted
 </Directory></code> </Directory></code>
-При этом нужно учитывать, что большое количество файлов .htaccess может замедлить работу сервера.+При этом нужно учитывать, что большое количество файлов **.htaccess** может замедлить работу сервера. 
 +====== Примеры файлов .htaccess ====== 
 +Для ограничения доступа к выбранной директории скопируйте эти строчки в ваш **.htaccess** файл: 
 +<code>AuthType Basic 
 +AuthName "Thats protected Area!" 
 +AuthUserFile /usr/host/mysite/.htpasswd 
 +Require valid-user 
 +<Files .htpasswd> 
 +   deny from all  #запрет доступа из браузера к .htpasswd 
 +</Files></code>
  
 +Для запрета доступа только к файлу //private.zip// скопируйте эти строчки в ваш **.htaccess** файл:
 +<code><Files private.zip>
 +AuthType Basic
 +AuthName "Thats protected Area!"
 +AuthUserFile /usr/host/mysite/.htpasswd
 +Require valid-user
 +</Files>
 +<Files .htpasswd>
 +   deny from all  #запрет доступа из браузера к .htpasswd
 +</Files></code>
 +Обратите внимание что файлы **.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 
 +====== Файлы групп ======
 +Если к защищаемой области сайта должна иметь доступ группа людей, то удобно объединить людей в группы, и разрешать доступ, определяя принадлежность пользователей к группе.
 +
 +Формат файла групп - это текстовый файл, каждая строка, которого описывает отдельную группу. Первым в строке должно идти название группы с двоеточием. А затем через пробел перечисляются посетители, входящие в группу.
 +====== Пример файла групп ======
 +<code>Admins: admin alex mango
 +Users: guest user max23</code>
 +В группу Admins входят посетители с именами admin, alex, mango. А группу Users входят посетители с именами guest, user, max23.
 +====== Примеры .htaccess с группами ======
 +Пример файла .htaccess для доступа всем пользователям, прошедшим авторизацию
 +<code>AuthType Basic
 +AuthName "Private zone. Only for administrator!"
 +AuthUserFile  /usr/host/mysite/.htpasswd
 +require valid-user</code>
 +Пример файла .htaccess для доступа только пользователям admin и root
 +<code>AuthType Basic
 +AuthName "Private zone. Only for administrator!"
 +AuthUserFile  /usr/host/mysite/.htpasswd
 +require user admin root</code>
 +Доступ только пользователей из группы admins
 +<code>AuthType Basic
 +AuthName "Private zone. Only for administrator!"
 +AuthUserFile  /usr/host/mysite/.htpasswd
 +AuthGroupFile /usr/host/mysite/group
 +require group admins</code>
 +[[https://htmlweb.ru/service/htpasswd.php|Источник]]
htaccess.1609786523.txt.gz · Последнее изменение: 2021/01/04 21:55 — dja