Внимание: Статья описывает ручной способ установки паролей. Вы можете воспользоваться автоматическим помощником из личного кабинета, "полный список функций", "установка паролей на папки (Apache / .htaccess)".
--------------------
Важно: данный способ защиты папок работает только для веб-сервера Apache.
Убедитесь, что сервер вашего сайта - Apache. Это можно сделать в личном кабинете, "полный список функций", "управление сайтами и серверами".
Для защиты папок паролем с использованием сервера IIS (ASP / ASP.NET) вам придется разработать собственную систему авторизаций на основе сессий.
1. Подготовка файла с паролями
Вам нужно скачать утилиту генерации файла паролей: htpasswd.exe, 36 кбайт.
Для генерации паролей в командной строке можно давать следующие команды:
Для первого пароля (логин - yyy, пароль - zzz):
htpasswd.exe -bc .htpasswd yyy zzz
При этом будет создан файл .htpasswd.
Для добавления паролей в файл:
htpasswd.exe -b .htpasswd xxx zzz
При этом в файл .htpasswd будут дописаны пароли.
После этого файл можно открыть в текстовом редакторе и убедиться, что там есть строчки, соответствующие пользователям, которых вы добавили. Для примера выше этот файл будет таков:
yyy:$apr1$XE1.....$U22NqaiWxdRURmPcwEAmS.
xxx:$apr1$2K1.....$x.wbKD7PCD.3EgbcsXA8d/
Для примера мы будем защищать паролем директорию adm, находящуюся в корневом каталоге сайта.
Вам необходимо создать файл .htaccess примерно следующего содержания:
AuthUserFile D:/Web/1GB.ru/hosted/site_0060c57e/adm/.htpasswd
AuthName Admin
AuthType Basic
Require valid-user
Здесь первая строка - путь до файла .htpasswd. Вы видите часть /adm/ - она соответствует папке, которую мы будем закрывать.
Путь перед ней - это абсолютный путь к вашему сайту. Его можно посмотреть в личном кабинете, страница "полный список функций", "управление сайтами и серверами".
Внимание: символы '\' в пути нужно заменить на '/'.
Вторая строчка - имя блока авторизации, тут можно написать что-то небольшое, лучше английское, например, Admin, как в данном примере.
После этого файлы .htpasswd и .htaccess необходимо поместить в папку adm (в нашем примере).
Разместите в эту же папку index.html с тестовым содержимым, и можно проверять. Пожалуйста, не путайте отказ в просмотре каталога из-за отсутствия индексного файла и отказ авторизации - сообщения выдаются похожие, но всё же немного разные.
Дополнительная информация
Вы можете найти более подробные инструкции по этому вопросу на сайте https://httpd.apache.org/ в разделах документации.