- Регистрация
- 04.09.14
- Сообщения
- 2.926
- Реакции
- 2.016
- Баллы
- 113
Поисковые боты
Снижать нагрузку от поисковых ботов будем через файл robots.txt.
Нам необходимо настроить задержку индексирования, т.е. разрешить поисковым ботам Baidu, Bing, Mail, Яндекс и т.д. обращаться к сайту только через определенные временные интервалы. Для этого создадим файл robots.txt (если его нет) в корневой директории сайта с таким содержимым:
Готово! Мы выставили интервал для поисковых ботов в 5 секунд, т.е. только раз в 5 секунд боты смогут проиндексировать сайт.
Тем не менее, это не панацея, т.к. некоторые боты (например Google) игнорируют директиву Crawl-delay. Для Google задержку можно настроить в webmaster tools. К слову, подобные настройки для вебмастеров есть у многих поисковых систем.
Вредоносные боты: запрет на уровне конфигурации сервера
Теперь поговорим про ситуацию, когда сайт упал из-за большого количества трафика и боты крупных поисковых систем здесь ни при чем.
Для начала нужно выяснить, действительно ли это были боты. Для этого нужно проверить логи сервера, на котором расположен сайт. Проверять нужно, есть ли запросы с одним и тем же user agent. Например, уже больше десяти лет в сети бродит известный многим сисадминам MauiBot. Его можно блокировать без колебаний. В этот же список попадают MJ12bot, SEMrushBot, AhrefsBot. По запросу “blocking bad bots” можно найти списки с тысячами таких ботов.
Блокировка в данном случае будет происходить через файл конфигурации nginx. Для примера заблокируем вышеуказанных ботов. Если на сервере установлена панель управления хостингом ISPmanager, то для каждого юзера создаются свои файлы конфигурации для каждого домена отдельно. Находятся они здесь: /etc/nginx/vhosts/user/domenname.ru.conf
Вот в этот файл нам и нужно будет добавить в секцию server следующие строки:
Хотя при установленной ISPmanager можно поступить еще проще. Заходим в раздел WWW-домены, жмем на копку Конфиг и вносим нужные изменения. Так даже надежнее, так как панель управления в этом случае проверит синтаксис файла и не даст сохранить его при ошибке.
При такой блокировке боты не смогут попасть на Ваш сайт и создать дополнительную ненужную нагрузку.
Снижать нагрузку от поисковых ботов будем через файл robots.txt.
Нам необходимо настроить задержку индексирования, т.е. разрешить поисковым ботам Baidu, Bing, Mail, Яндекс и т.д. обращаться к сайту только через определенные временные интервалы. Для этого создадим файл robots.txt (если его нет) в корневой директории сайта с таким содержимым:
Код:
User-agent: *
Crawl-delay: 5
Тем не менее, это не панацея, т.к. некоторые боты (например Google) игнорируют директиву Crawl-delay. Для Google задержку можно настроить в webmaster tools. К слову, подобные настройки для вебмастеров есть у многих поисковых систем.
Вредоносные боты: запрет на уровне конфигурации сервера
Теперь поговорим про ситуацию, когда сайт упал из-за большого количества трафика и боты крупных поисковых систем здесь ни при чем.
Для начала нужно выяснить, действительно ли это были боты. Для этого нужно проверить логи сервера, на котором расположен сайт. Проверять нужно, есть ли запросы с одним и тем же user agent. Например, уже больше десяти лет в сети бродит известный многим сисадминам MauiBot. Его можно блокировать без колебаний. В этот же список попадают MJ12bot, SEMrushBot, AhrefsBot. По запросу “blocking bad bots” можно найти списки с тысячами таких ботов.
Блокировка в данном случае будет происходить через файл конфигурации nginx. Для примера заблокируем вышеуказанных ботов. Если на сервере установлена панель управления хостингом ISPmanager, то для каждого юзера создаются свои файлы конфигурации для каждого домена отдельно. Находятся они здесь: /etc/nginx/vhosts/user/domenname.ru.conf
Вот в этот файл нам и нужно будет добавить в секцию server следующие строки:
Код:
if ($http_user_agent ~* (MauiBot|MJ12bot|SEMrushBot|AhrefsBot)){
return 403;
}
При такой блокировке боты не смогут попасть на Ваш сайт и создать дополнительную ненужную нагрузку.