Блировка MSN бота - достал уже

D
На сайте с 28.06.2008
Offline
1101
633

Какой то не нормальный бот - истерически бегает по сайтам, достал уже. Как его правильно заблокировтаь для всего сервера?

Можно в конфиге Нгих прописать?

<Location />
SetEnvIf User-Agent "msnbot" BlockUA
Order allow,deny
Allow from all
Deny from env=BlockUA
</Location>
Cthulchu
На сайте с 09.09.2011
Offline
50
#1

можно. разрешаю. все верно, бан по юзерагенту.

но, по моему, классика жанра - это

if ($http_user_agent ~ msnbot) {
return 407;
}

407 - прекрасный код. рекомендую, он, кагбе, говорит: "я знаю кто ты, но доступ запрещен"

весьма унизительно для мсн-бота :)

условие дописываю в /usr/local/nginx/conf/nginx.conf

я смею всё, что смеет человек. кто смеет больше, тот не человек.
D
На сайте с 28.06.2008
Offline
1101
#2

А в какое место конфига прописывать - имеет значение?

Evas EvaSystems
На сайте с 31.05.2012
Offline
104
#3

Можно, только не так, как вы написали. У nginx свой синтаксис, не такой как у apache

if ($http_user_agent ~ "msnbot") {
return 444;
}

Писать это необходимо будет для каждого сайта в секции server после server_name

Системный администратор Linux. Настройка, сопровождение и оптимизация серверов. Отзывы - searchengines.guru/ru/forum/1017473
D
На сайте с 28.06.2008
Offline
1101
#4

Так ~ "msnbot" или ~ msnbot ?

Cthulchu
На сайте с 09.09.2011
Offline
50
#5

на сколько я помню, разницы нету.

A
На сайте с 19.07.2010
Offline
130
#6
Evas:
if ($http_user_agent ~ "msnbot") {
return 444;
}

444 - просто сбрасывает соединение без кода ошибки, как бы бот не стал долбиться по кругу.

я бы отдавал 403, 401, ну или в крайнем случае 404

.............

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий