Как я могу заблокировать агент пользователя от всех сайтов на моем сервере?

Ваши задачи обработки саморазрабатываются? Они распределяются путем присвоения каждому узлу некоторого блока данных для обработки?

Если так, могло бы быть более эффективно приблизить процесс к данным, не служить данным процессам. Это не слишком трудно сделать, но требует другого процесса мышления, чем просто создание серверов.

Во-первых, поместите некоторые диски на каждый узел. Возможно, не RAID, просто файловая система на каждом. Разделите данные по всем дискам на всех узлах и запустите задачи на узлах, которые содержат данные, необходимые для задачи. Попытайтесь минимизировать передачи междоузлия.

Конечно, ни одно из этого не работало бы, если для Ваших задач нужны непредсказуемые части данных.

9
задан 13 April 2017 в 15:33
3 ответа

mod_rewrite можно настроить на уровне сервера в соответствии с документами:

RewriteCond %{HTTP_USER_AGENT} "Mozilla/4\.0 \(compatible; ICS\)" [nocase]
RewriteRule ^.*$ - [forbidden,last]

Не забудьте экранировать регулярное выражение в RewriteCond

4
ответ дан 2 December 2019 в 22:30

При условии, что синтаксис в строках SetEnv верен, вы должны иметь возможность добавить это в конфигурирование следующим образом:

<Location *>
SetEnvIfNoCase User-Agent "Mozilla/4.0 (compatible; ICS)" bad_user
Deny from env=bad_user
</Location>

Должно позволить, чтобы это работало на всех виртуальных хостах - только что протестировано на 2.2.24, сработало отлично.

1
ответ дан 2 December 2019 в 22:30

Теперь похоже на старый вопрос, но я хотел сделать то же самое и нашел ответ нервным выше. Это не совсем правильно - мне кажется, что это должно быть , а SetEnvIf требует регулярного выражения, поэтому круглые скобки должны быть заключены в кавычки.

Это помогло мне применить контроль доступа ко всем vhosts:

SetEnvIfNoCase User-Agent "^Mozilla/4.0 \(compatible; Synapse\)" bad_ua
<Location "/">
    Deny from env=bad_ua
</Location>

Просто включите это перед определениями vhost.

7
ответ дан 2 December 2019 в 22:30

Теги

Похожие вопросы