HTTP авторизация посредством .htaccess

httpHTTP протокол имеет простой механизм авторизации пользователя, который позволяет закрыть необходимые части сайта от публичного просмотра. Принцип работы довольно прост, чтобы попасть в закрытую область, пользователю необходимо ввести логин и пароль. С точки зрения безопасности данная авторизация не идеальна, и защищать критически важную информацию с помощью данной авторизации крайне не рекомендуется. Однако при проведении каких-либо профилактических работ, для временного ограничения доступа к сайту или к разделам сайта удобно воспользоваться данной авторизацией, в виду небольших временных затрат на её организацию.

В данной заметке мы поговорим о том, как сделать простую авторизацию с помощью .htaccess.

Первым делом необходимо создать файл .htpasswd, который будет хранить учетные данные пользователя. Логин и пароль в этом файле хранятся в специальном виде, пароль по ясным причинам так же зашифрован. Для удобства можно воспользоваться онлайн сервисом для генерации кода данного файла.

Сгенерировать htpasswd можно тут: http://www.htaccesstools.com/htpasswd-generator/

Код должен получиться что-то вроде этого:

1
Admin:$apr1$Kquu91ma$z8zPO8AoWxNYuuARi3Kgp0
После того как файл htpasswd создан, необходимо прописать кое-какие настройки в файле .htaccess. Файл htaccess должен находиться в директории, для которой нужна авторизация. Авторизация распространяется на все вложенные директории и файлы, поместив файл в корень сайта, мы можем ограничить доступ ко всему сайту.

Параметры в файле htaccess:

1
2
3
4
AuthType Basic
AuthName «want to enter?»
AuthUserFile /home/data/yournet.kz/.htpasswd
Require valid-user
AuthUserFile – сюда следует указать путь до файла .htpasswd.