Ubuntu 9.10 Apache2
Привет, ребята,
Короче говоря, мне нужно ограничить доступ к определенной части моего веб-сайта на основе динамического IP-адреса источника, который время от времени меняется. Исторически сложилось так, что я только что добавил в htaccess следующее ...
order deny,allow
deny from all
# allow my dynamic IP address
allow from <dynamic ip>
Но проблема в том, что мне придется вручную вносить это изменение при каждом изменении IP.
В идеале я бы хотел вместо этого указать имя хоста ... что-то вроде:
order deny,allow
deny from all
# allow my host
allow from hostname.whatever.local
Хотя, похоже, это не сработало. Выдает ошибку 403 - доступ запрещен. .Htaccess не поддерживает имена хостов?
Скорее всего, это связано с тем, что Apache не ищет имя хоста в том направлении, в котором вы думаете. Вместо того, чтобы искать hostname.whatever.local и разрешать этот адрес, он выполняет обратный поиск по подключенному IP-адресу, проверяя, соответствует ли ответ разрешенному имени.
(Ну, на самом деле Apache выполняет двойной поиск, сначала обратный поиск, а затем прямой поиск результата обратного.)
Поскольку проблема связана с динамическим IP-адресом, я предполагаю, что PTR не просто меняется постоянно.
Вы можете применить механизм перезаписи. Используйте RewriteCond% {REMOTE_HOST} ^ host1. *, А затем, возможно, RewriteRule с кодом ошибки