|
Справочная информация >> Инструкции по аккаунту >> Паролирование директорий Ограничение доступа к директориям.Если Вам необходимо ограничить доступ в какую-либо директорию на вашем сайте, то есть несколько путей для решения этой задачи: 1. Запаролировать директорию самим из панели управления Вашим аккаунтом. 2. Определиться с количеством пользователей, которые будут иметь доступ в данную папку и написать об этом в службу технической поддержки 3. Для того, чтобы закрыть директорию паролем нужно воспользоваться встроенной авторизацией веб–сервера Apache. Для этого используется файл .htaccess c соответствующими директивами для Apache. В самом простом случае директивы должны быть такими: AuthName "Authentication required" AuthType Basic require valid-user AuthUserFile /home/host1000/www/test/.htpasswd Директива AuthUserFile задает путь к файлу, содержащему имена и пароли пользователей. Он может иметь практически любое имя и располагаться в любом каталоге, главное, чтобы веб–сервер мог его прочитать, что требует установки соответствующих прав доступа к этому файлу (на нашем сервере — 600). Традиционно такие файлы называют ".htpasswd". Обычно такие файлы хранят в директории, к которой невозможно обратиться из браузера, то есть выше папки "/www/". Название файла начинается с символа "." (точка) не случайно. Все файлы, которые начинаются со словосочетания ".ht" запрещены веб-сервером к прочтению по протоколу http. При таком наборе директив доступ к каталогу получат все пользователи, перечисленные в .htpasswd. Чтобы дать доступ только некоторым из них, вместо: require valid–user нужно в .htaccess записать директиву: require user name_of_user_1 name_of_user_2 name_of_user_3 Как создать файл .htpasswd?Хотя .htpasswd — это обычный текстовой файл, для работы с ним есть специальная утилита. Ее вариант для Unix называется "htpasswd": /usr/local/apache/bin/htpasswd -bc /path_to_file/.htpasswd username password Данная команда, введенная в командной строке сервера, создаст новый файл .htpasswd и сделает запись о пользователе с указанными именем и паролем в этом файле. Как добавить или изменить запись о пользователе в файле .htpasswd?/usr/local/apache/bin/htpasswd -b /path_to_file/.htpasswd username password_word Данная команда создаст запись о пользователе с указанными именем и паролем в указанном файле или изменит пароль пользователя в уже существующей записи. Как удалить запись о пользователе из .htpasswd?Для этого достаточно открыть .htpasswd обычным текстовым редактором, найти и удалить строчку, начинающуюся с "имя_пользователя:". Если Ваш тарифный план не предусматривает SSH (доступ к командной строке сервера), или Вы просто с этим не достаточно знакомы, то для создания файла .htpasswd Вы можете использовать несколько методов: 1. Воспользоваться любой программой поддерживающей шифрацию crypt, сгенерировать с помощью ее пароль и создать на локальном диске файл (например с именем .htpasswd ) и записать в него следующую информацию: username:crypted_password После этого полученный файл необходимо закачать по FTP протоколу в нужную директорию на нашем сервере. 2. Cоздать файл .htpasswd можно при помощи PHP или Perl (или любого другого серверного языка программирования), используя системные вызовы в PHP: exec("/usr/local/apache/bin/htpasswd -b /home/host1000/www/test/.htpasswd username password_word", $system_answer)
в Perl: exec("/usr/local/apache/bin/htpasswd -b /home/host1000/www/test/.htpasswd username password_word")
my $system_answer = Обратите внимание что используются обратные кавычки " ` "; |
|
|
|
||||||||||||||








