Как ограничить доступ к сайту через .htaccess

В статье мы расскажем, как ограничить доступ к сайту через файл .htaccess.

Зачем ограничивать доступ

В каких случаях ограничивают доступ к сайту или разделу:

  • если нужно защитить админку сайта от третьих лиц,
  • когда необходимо обезопасить сайт при вредоносной атаке,
  • если нужно временно закрыть сайт от посещений (например, пока идут технические работы),
  • когда необходимо закрыть доступ для определённого пользователя.

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

 
Как формируется правило

Чтобы создать правило, разберёмся, из каких частей оно состоит. Правило формируется из трёх частей:

1. Определяющая конструкция — её указывают в начале правила. Она бывает двух видов:

  • order deny,allow — “запретить визиты со всех IP-адресов, кроме перечисленных”,
  • order allow,deny — “разрешить визиты со всех IP-адресов, кроме перечисленных.

2. Действие. Его нужно указать после конструкции на следующей строке. Действие определяет, разрешить или запретить визиты. Используется:

  • deny from — “запретить с”,
  • allow from — “разрешить с”.

3. IP-адрес, к которому нужно применить действие. Указывается на той же строке. Если действие должно затрагивать все IP-адреса, используется параметр all.

Например, так можно закрыть доступ для подсети:

order allow,deny
deny from 123.123.123.

 

Как ограничить доступ по IP-адресу

1. Перейдите в панель управления хостингом. Затем откройте директорию сайта или раздела, который нужно скрыть.

2. Откройте файл .htaccess и добавьте нужное правило:

 
Запретить все визиты

Добавьте строки в файл:

order deny,allow
deny from all

 

 
Закрыть посещения для определённого IP-адреса

Добавьте строки в файл:

order allow,deny
deny from 123.123.123.123

Вместо 123.123.123.123 укажите IP-адрес, которому нужно запретить доступ. 

Чтобы закрыть доступ нескольким IP, перечислите адреса через пробел:

order allow,deny
deny from 123.123.123.123 321.321.321.321

Вместо 123.123.123.123 и 321.321.321.321 укажите IP-адреса, которым нужно запретить доступ.

 
Разрешить посещения с определённого IP-адреса

Добавьте строки в файл:

order deny,allow
deny from all
allow from 123.123.123.123

Вместо 123.123.123.123 укажите IP-адрес, которому нужно разрешить доступ.

Чтобы закрыть доступ нескольким IP, перечислите адреса через пробел:

order deny,allow
deny from all
allow from 123.123.123.123 321.321.321.321

Вместо 123.123.123.123 и 321.321.321.321 укажите IP-адреса, которым нужно разрешить доступ.

Готово, вы ограничили доступ.

Если вы не нашли ответ, спросите у нас!
Написать в поддержку