Ограничение доступа при помощи .htaccess

Иногда удобным методом ограничить доступ к разделам сайта  (например, к панели администратора или каким-то конфиденциальным данным) есть ограничение доступа при помощи .htaccess (или, по другому, basic authentication). Конечно, с помощью скриптов это можно сделать изящнее, удобнее, а иногда даже безопаснее. Дело в том, что вся информация для получения доступа отправляется с каждым запросом в виде заголовков. Но если это не критично, то можно использовать; это наверное, самый быстрый вариант.

.htaccess позволяет установить ограничение на доступ к директории.

Чтобы получить доступ к данным, пользователю будет предложено ввести пароль.

Для этого в защищенный директории создадим файл .htaccess со следующим содержимым:

AuthName "Protected part"
AuthType Basic
AuthUserFile /path/.htpasswd
require valid-user
При попытке получения доступа пользователь увидит сообщение "Protected part" и предложение ввести пароль. Обратите внимание на расположение файла с паролями: адрес необходимо указывать относительно корневой директории сервера.

Если вы хотите ограничить доступ только к одному файлу:

<Files protected.zip>
AuthName "Protected file"
AuthType Basic
AuthUserFile /path/.htpasswd
</Files>
В имени файла поддерживаются регулярные выражения, можно ограничить доступ к группе файлов:
<Files ".(rar)$">
AuthName "Protected part"
AuthType Basic
AuthUserFile /path/.htpasswd
</Files>
Генерация файла .htpasswd в GNU/Linux:
htpasswd -cm .htpasswd admin
Ключ -c значит создание файла, -m - MD5 шифр пароля. admin - имя пользователя. после этого вам будет предложено ввести и повторить пароль. На этом все. Теперь мы научились защищать директории и отдельные файлы с помощью .htaccess