Я использую Apache и .htaccess
для БЛОКИРОВКИ IP-адресов, например, так:
SetEnvIF X-Forwarded-For "110.100.*.*" DenyIP
SetEnvIF X-Forwarded-For "120.100.*.*" DenyIP
SetEnvIF X-Forwarded-For "130.100.*.*" DenyIP
SetEnvIF X-Forwarded-For "210.200.*.*" DenyIP
SetEnvIF X-Forwarded-For "220.200.*.*" DenyIP
SetEnvIF X-Forwarded-For "230.200.*.*" DenyIP
..
..
Order Deny,Allow
Deny from env=DenyIP
На самом деле их довольно много, в реальном файле.
(Пожалуйста, давайте не будем обсуждать, почему я использую такой подход для блокировки IP-адресов через Apache. На это есть много причин.)
Есть ли способ, которым я могу перечислить IP-адреса внутри файла .txt
, а затем указать на этот файл из .htaccess
?
Что-то вроде этого:
SetEnvIF X-Forwarded-For /var/www/html/ips.txt DenyIP
Затем я мог бы просто построчно указать IP-адреса в файле ips.txt
следующим образом:
110.100.*.*
120.100.*.*
130.100.*.*
210.200.*.*
220.200.*.*
230.200.*.*
Потому что так проще (и возможно) автоматизировать записи IP в файл .txt
.
Это возможно? Или каков правильный подход для этого, пожалуйста?
Спасибо всем :)
SetEnvIf
это невозможно. Вам нужно будет использоватьRewriteMap
. Это также дает вам возможность перенаправлять запрещенных пользователей в другое место. - person Mike Rockétt   schedule 16.02.2016