Как заблокировать bing bot/2.0 в nginx?

D
На сайте с 28.06.2008
Offline
1113
2225

Пробовал так в секцию сервер

if ($http_user_agent ~* msnbot|bingot) {
return 444;
}

Но в логах по прежнему вижу

"Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)"

получающего 200 ответ

F2
На сайте с 04.09.2016
Offline
5
#1
Dram:
Пробовал так в секцию сервер

Но в логах по прежнему вижу
получающего 200 ответ

у вас bingot в условии, b пропустили?

Терашоп (https://terashop.ru)
D
На сайте с 28.06.2008
Offline
1113
#2

Исправил


if ($http_user_agent ~* msnbot|bingbot) {
return 444;
}

Перезагрузил нгихс, не помогает - все равно 200 ответ

---------- Добавлено 28.10.2016 в 13:09 ----------

Сам делаю запрос

wget -U "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)" http://www.сайт/

получаю 200 ответ

---------- Добавлено 28.10.2016 в 13:11 ----------

Полностью секция сервер у меня такая

server {
listen 80;
server_name "";
return 444;
if ($http_user_agent ~* msnbot|bingbot) {
return 444;
}
}
F2
На сайте с 04.09.2016
Offline
5
#3

У вас обработка заканчивается до условия на первом return 444;

Т.е. условие не проверяется вообще.

D
На сайте с 28.06.2008
Offline
1113
#4

Поднял вверх, ничего не поменялось

server {
if ($http_user_agent ~* msnbot|bingbot) {
return 444;
}
listen 80;
server_name "";
return 444;
}
AGHost
На сайте с 16.11.2011
Offline
115
#5

Не совсем ясно, зачем тогда if, если все равно в любом случае выполняется return 444;

Вероятно проблема в server_name ""; заголовок host передается. Добавьте условие в конфиг с виртуальным хостом.

8 лет на рынке услуг хостинга - https://agho.st (https://agho.st)
D
На сайте с 28.06.2008
Offline
1113
#6

Прописал так

server {
if ($http_user_agent ~* msnbot|bingbot) {
return 444;
}
listen 80;
}

Толку нет, с локейшеном тоже

AGHost
На сайте с 16.11.2011
Offline
115
#7

Dram, в каком блоке прописываете это? Добавьте условие в блок с виртуальным хостом.

F2
На сайте с 04.09.2016
Offline
5
#8

Проверил при явном указании server_name, все работает, без него или пустой строкой - не работает.

D
На сайте с 28.06.2008
Offline
1113
#9

Спасибо, теперь все получилось!

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