Ставим пароль на сайт или папку с помощью .htaccess


Иногда возникают ситуации, когда требуется закрыть паролем доступ ко всему сайту или некоторым его папкам. Это легко сделать с помощью файлов .htaccess и .htpasswd.
 
В директории, которую мы хотим закрыть паролем (или в корневом каталоге сайта, если мы закрываем весь сайт), создадим файл .htaccess, в который запишем такие строки:
 
AuthName "произвольный_текст"
AuthType Basic  
Require valid-user
AuthUserFile "полный_путь_к _файлу_.htpasswd"
 
В строке AuthName вместо "произвольный_текст" обычно находится сообщение, которое указывает к чему осуществляется доступ, например "Система управления" или что-то подобное. Это сообщение будет отображаться в окне для ввода логина и пароля.
 
В строке AuthUserFile указываем полный путь к файлу .htpasswd, в котором находятся зашифрованные пароли. Очень часто, из соображений безопасности, на хостинге создается специальная директория для таких файлов, доступ к которой из интернета закрыт. Путь к файлу .htpasswd может выглядеть так: /home/my_site/.htpasswds/.htpasswd или в случае с операционной системой Windows так: c:/my_site/.htpasswd.
 
Сам файл .htpasswd генерируется с помощью утилиты htpasswd из комплекта Apache. Обычно, для этого нужно написать в командной строке следующее:
 
htpasswd -bc .htpasswd имя_пользователя пароль_пользователя
 
После этого нужно переместить полученный файл в директорию, указанную в AuthUserFile. О других функциях утилиты htpasswd можно узнать запустив ее из  командной строки без параметров.
 
После выполнения описанных действий, при попытке обращения к защищенному сайту или каталогу, появится окно с просьбой ввести логин и пароль для входа на сайт.


Добавить комментарий

Логин:
Пароль:
Проверочное число: