Як обмежити доступ до каталогів сайту
Найпростіший спосіб зробити це — використовувати вбудовану авторизацію веб-сервера apache. Для цього використовується файл .htaccess c відповідними
директивами для apache. У найпростішому випадку директиви повинні бути такими:

authuserfile /полный_путь_к_файлу/.htpasswd
authgroupfile /dev/null
authname підказка
authtype basic
require valid-user

Директива authuserfile задає шлях до файлу, який містить імена і паролі користувачів. Він може мати практично будь-яке ім’я і розташовуватися в будь-якому каталозі,
головне — щоб веб-сервер міг його прочитати, що потребує встановлення відповідних прав доступу до цього файлу (на нашому сервері — 644). Однак традиційно
такі файли називають .htpasswd
При такому наборі директив доступ до каталогу отримають всі користувачі, перераховані в .htpasswd. Щоб дати доступ лише деяким з них, замість require
valid-user потрібно .htaccess записати директиву require user список_имен_пользователей
де список_имен_пользователей має вигляд: имя_пользователя1 имя_пользователя2 имя_пользователя3…
Як створити файл .htpasswd
Хоча .htpasswd — це звичайний текстовий файл, для роботи з ним є спеціальна утиліта — її варіант для unix називається htpasswd
Команда htpasswd -c .htpasswd ім’я користувача
створить новий файл .htpasswd, запросить пароль для користувача і створить запис про користувача з зазначеними ім’ям і паролем в цьому файлі.

Як додати або змінити запис про користувача .htpasswd
Команда htpasswd ім’я користувача
запросить пароль для користувача і створить запис про користувача з зазначеними ім’ям і паролем у вказаному файлі або змінить пароль користувача у вже
існуючої запису.
Як видалити запис користувача .htpasswd
Для цього достатньо відкрити .htpasswd звичайним текстовим редактором, знайти і видалити рядок, що починається з ім’я користувача:

Підкажіть, будь ласка, як я можу створити працюючий файл .htpasswd ?

Начебто ясно, що паролі, відповідні логінів, зберігаються в цих файлах в закриптованной формі.
Пробував різні утилітки для win, які криптуют паролі здавалося б відповідною схемою. Але на практиці паролі не розпізнаються.

Windows створювати файли .htpasswd, щоб вони працювали?
Створювати ці файли краще через скрипт.

1. Створити файл паролів, виконавши зі скрипта команду
/usr/local/apache/bin/htpasswd -c -b passwordfile username password

де passwordfile це, наприклад, /home/mydomainru/.htpasswd
usernanme і password відповідно ім’я користувача і пароль

2. В директорії, яку Ви паролируете, створити файл .htaccess

authtype basic
authname «security system»
authuserfile /home/mydomainru/.htpasswd
require valid-user

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here