Метка: nginx

Блокировка user-agents через Nginx на всех сайтах сервера

Все, кто решается на перенос своих сайтов с shared-хостинга на VPS-сервер, сталкиваются с проблемой нагрузки сервера из-за поисковых роботов (ботов).
Если у вас на сервере установлен Apache + Nginx + ISPmanager, то чтобы закрыть доступ ненужным ботам делаем следующие манипуляции.
Изучаем логи сайтов на сервере и составляем список из User-agent ботов, портящих нам жизнь.
Идем в директорию

/etc/nginx/vhosts-includes/

Создаем здесь файл с расширением .conf (к примеру block.conf).
Добавляем в него условия фильтрации и список User-agent, который мы будем блокировать. Список в будущем можно будет пополнять.

if ($http_user_agent ~ SputnikBot|Crowsnest|PaperLiBot|peerindex|ia_archiver|Slurp|Aport|NING|JS-Kit|rogerbot|BLEXBot|MJ12bot|Twiceler|Baiduspider|Java|CommentReader|Yeti|discobot|BTWebClient|Tagoobot|Ezooms|igdeSpyder|AhrefsBot|Teleport|Offline|DISCo|netvampire|Copier|HTTrack|WebCopier|statdom.ru) {
return 444;
}

Перезагружаем Nginx.

nginx