Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Настройка защищённых зон
Для конфигурирования можно использовать файл глобальных настроек сервера, группируя директивы в блоки <Directory>, <DirectoryMatch>, <Files>, <FilesMatch>, <Location> или <LocationMatch> и защищая указанные файлы и директории. Можно использовать и локальные конфигурационные файлы .htaccess. В настоящей статье будем для определённости придерживаться второго пути. Но все приводимые конфигурационные директивы можно использовать и в любых других контекстах.
Следует также заметить, что все обсуждаемые в статье директивы принадлежат к группе AuthConfig. То есть, чтобы использовать их в .htaccess, у вас должны быть соответствующие права.
Самый простой пример
Давайте рассмотрим самый простой случай. Пусть нам необходимо защитить документы, находящиеся в некоторой директории (и всех вложенных в неё поддиректориях).
Сначала создадим файл с паролями. Для этого есть специальная утилита htdigest. В целом она похожа на htpasswd, но требует больше параметров:
htdigest [ -c ] passwdfile realm username
Ключ -c говорит о том, что файл с паролями надо создать. Если этот ключ отсутствует, то файл будет дополнен.
n passwdfile – имя файла с паролями.
n realm – имя защищённой зоны.
n username – имя пользователя.
Пароль по понятным причинам не указывается в командной строке, htdigest «попросит» ввести и подтвердить его.
То есть, чтобы создать файл passwd и пользователя a для зоны Realm-A, нам следует ввести следующую команду:
htdigest -c passwd Realm-A a
При добавлении новых пользователей ключ -c указывать не надо.
Чтобы снизить риск хищения секретной информации, файл с паролями лучше разместить где-нибудь вне дерева каталогов, доступных по HTTP.
Вернёмся теперь к директории, которую мы хотим защитить. Если в ней ещё нет файла .htaccess, то его следует создать.
Добавим в него следующие директивы:
AuthType Digest
AuthName Realm-A
AuthDigestFile /home/www/test/passwd