Защитить паролем любой раздел на сайте можно с помощью средств самого сервера Apache. Защита простая и надежная. Делается это с помощью файлов .htaccess и .htpasswd, которые помещаются в папку, где необходима аутентификация.

Файл .htaccess

В нужной папке создаем файл .htaccess с помощью FTP-клиента. Непосредственно в Windows создать файл не получится, так как система будет ругаться на пустое название, ведь в ОС Windows до точки идет название, а после расширение файла. Таким образом Windows этот файл воспринимается с расширением .htaccess и пустым названием.

Открываем файл на редактирование в любом текстовом редакторе и записываем в него следующие строки:

AuthType Basic  
AuthName admin
require valid-user

Где admin — это логин, который будет использоваться для авторизации. Сохраняем файл на сервере.

Дополнительные настройки

AuthType — тип используемой аутентификации. Для базовой аутентификации эта директива должна иметь значение: Basic
AuthName — имя области действия аутентификации. Текст, помогающий посетителю понять, куда он пытается получить доступ. Например, может быть написано: «Private zone. Only for administrator!»
AuthUserFile — путь к файлу с паролями (.htpasswd).
AuthGroupFile — путь к файлу групп, если он существует.
Require — одно или несколько требований, которые должны быть выполнены для получения доступа к закрытой области.

Файл .htpasswd

Теперь необходимо создать файл с паролем. Если вы работаете из под ОС Windows, то для этого вам понадобится специальная утилита. Скачать можно здесь.

Запускаем командную строку: Пуск → Выполнить, вводим cmd и ОК. Теперь необходимо перейти в директорию с файлом htpasswd.exe. Например командой cd C:.

htpasswd1-3275399

И ввести следующую команду:

htpasswd -cm .htpasswd admin

Данная команда устанавливает пароль для пользователя admin. В ответ будет запрошен желаемый пароль и повтор. Если все верно, то в этой директории будет создан нужный нам файл .htpasswd. Добавляем его рядом с файлом .htaccess лежащим на сервере.

Если в существующий файл необходимо добавить ещё одного пользователя, то вводим следующую команду:

htpasswd -m .htpasswd admin2

Где admin2 — логин нового пользователя. И не забываем перезаписать файл на сервере.

Теперь, если попробовать зайти в раздел, будет запрошен логин и пароль:

htpasswd2-8550310