В моей конфигурации Apache я хочу установить переменную окружения, если я вижу, что посетитель приходит с определенного диапазона IP. В настоящее время я делаю это так:
SetEnvIfNoCase Remote_Addr "^194\.8\.7[45]\." banned=spammer-ip
SetEnvIfNoCase Remote_Addr "^212\.156\.170\." banned=spammer-ip
Я бы предпочел что-то вроде этого:
SetEnvIfIpRange 194.8.74.0/23 banned=spammer-ip
SetEnvIfIpRange 212.156.170.0/24 banned=spammer-ip
... потому что я думаю, что преобразование IP-адреса в строку, а затем регулярное выражение - это пустая трата ресурсов.
Я мог бы сделать
Deny From 194.8.74.0/23
... но тогда я не получаю переменную, которую я могу проверить на своей странице ошибки 403 - чтобы найти причину, по которой в доступе было отказано.
Любые предложения, что я мог бы пропустить? Существует ли мод Apache2, который может устанавливать переменные среды на основе «диапазонов IP-адресов»?