Для обмеження доступу до сайту за IP адресою відвідувача необхідно до кореневого каталогу хоста додати файл .htaccess з наступними інструкціями:

Order Allow,Deny
Allow from All
Deny from XXXX

де XXXX — IP-адреса відвідувача.

Першим рядком визначається порядок обробки інструкцій дозволу доступу (Allow) і заборони доступу (Deny). Після цього, при обробці інструкцій веб-сервером, доступ спочатку дозволяється всім відвідувачам, а потім забороняється відвідувачу із зазначеним IP.

Іншим способом вирішення завдання обмеження доступу до сайту є надання доступу лише заздалегідь зареєстрованим відвідувачам. У цьому випадку адміністратору сайту буде необхідно створювати «акаунти» відвідувачів (ім’я користувача та пароль), яким дозволено заходити на сайт, та повідомляти їм деталі доступу.

Форма введення логіну/паролю для доступу до сайту

Зробити це можна так. Спочатку у файл .htaccess, розташований у кореневій директорії хоста, додається інструкція:

AuthName "Off limits to unuthorized visitors"
AuthType Basic
AuthUserFile /var/www/html/domains/mydomain.com/.htpasswd
require valid-user

Розберемо кожен рядок.

AuthName — попередження, яке користувачі отримуватимуть до проходження процедури авторизації на сайті.

AuthType — тип авторизації. Зазвичай достатньо типу Basic.

AuthUserFile — повний шлях до файлу (від /), у якому зберігатимуться імена користувачів та паролі (паролі — у зашифрованому вигляді). Цей файл прийнято називати .htpasswd, але використання цього імені зовсім необов’язково.

reqire valid-user — дана інструкція дозволяє доступ тим відвідувачам, які правильно вказали свої ім’я та пароль.

Після цього створюємо сам файл .htpasswd (ключ –c у команді нижче) і одразу ж додаємо користувача (наприклад, 1user1 ).

htpasswd -c .htpasswd 1user1

Далі утиліта htpasswd попросить вказати та підтвердити пароль для нового користувача. На цьому створення файлу .htpasswd та додавання до нього першого користувача закінчується. Для додавання нових користувачів достатньо виконати таку команду:

htpasswd .htpasswd 2user2