Паролювання директорій

Якщо Вам необхідно обмежити доступ до будь-якої директорії на вашому сайті, то є кілька шляхів для вирішення цього завдання:

2.Визначити кількість користувачів, які будуть мати доступ до цієї папки і написати про це в службу технічної підтримки.

Для цього використовується файл .htaccess з відповідними директивами для Apache.

У найпростішому випадку директиви мають бути такими:

Директива AuthUserFile визначає шлях до файлу, що містить імена та паролі користувачів. Він може мати практично будь-яке ім'я та розташовуватися в будь-якому каталозі, головне, щоб веб-сервер міг його прочитати, що вимагає встановлення відповідних прав доступу до цього файлу (на нашому сервері – 600). Традиційно такі файли називають ".htpasswd". Зазвичай такі файли зберігають у директорії, до якої неможливо звернутися з браузера, тобто вище за папку "/www/". Назва файлу починається із символу "." (Точка) не випадково. Усі файли, які починаються зі словосполучення ".ht" заборонені веб-сервером для прочитання за протоколом http.

При такому наборі директив доступ до каталогу отримають усі користувачі, перелічені у .htpasswd. Щоб дати доступ лише деяким із них, замість:

потрібно в .htaccess записати директиву:

Як створити файл .htpasswd?

Хоча .htpasswd це звичайний текстовий файл, для роботи з ним є спеціальна утиліта. Її варіант для Unix називається "htpasswd":

Ця команда, введена в командному рядку сервера, створить новий файл .htpasswd і зробить запис про користувача із зазначеним ім'ям та паролем у цьому файлі.

Як додати або змінити запис користувача у файлі .htpasswd?

Ця команда створить запис про користувача звказаними ім'ям та паролем у вказаному файлі або змінить пароль користувача у вже існуючому записі.

Як видалити запис про користувача з .htpasswd?

Якщо Ваш тарифний план не передбачає SSH (доступ до командного рядка сервера), або Ви просто з цим мало знайомі, то для створення файлу .htpasswd Ви можете використовувати декілька методів:

1.Скористатися будь-якою програмою, що підтримує шифрацію crypt, згенерувати за допомогою її пароль і створити на локальному диску файл (наприклад з ім'ям .htpasswd ) і записати в нього таку інформацію:

Після цього отриманий файл необхідно завантажити за протоколом FTP в потрібну директорію на нашому сервері.

2.Створити файл .htpasswd можна за допомогою PHP або Perl (або будь-якої іншої серверної мови програмування), використовуючи системні виклики в PHP:

Зверніть увагу, що використовуються зворотні лапки "`";