robots.txt: Ограничение нагрузки от поисковых машин

2012-09-26

Что делать, если у вас обширный сайт с очень большим количеством страниц, допустим, какой-то каталог и хостинг сайта не справляется с нагрузкой, идуйщей в основной массе от поисковых машин.

В действительности, поисковых роботов есть достаточно много (Google, Yahoo, Yandex, Mail.RU, MSN, …), и плохо ограничивать им доступ к сайту, так как, по большому счету они приносят пользу вашему ресурсу. Но, тоже не хорошо когда сайт тормозит или вообще падает на некоторое время, и пользователи не могут получить информацию. Если некоторые поисковые роботы можно настроить (к примеру от Google), указав им частоту сканирования, то у других малоизвестных даже сайт сложно найти.

В общем, проблему можно решить, указав в файле robots.txt, который должне находится в корне сайта, следующую запись:

Crawl-delay: 10

Она «говорит» роботам, что запрашивать каждую новую страницу сайта для анализа нужно не чаще чем раз в 10 секунд. Все «порядочные» поисковые роботы должны понимать эту запись. Можно экспериментировать с этим числом, увеличивая или уменьшая его. Чем оно меньше — тем сайт будет быстрее обработан поисковым роботом. Нужно найти золотую середину.

Полное содержимое файла robots.txt может выглядеть примерно так:

User-agent: *
Crawl-delay: 10

Если проблема все же осталась, и вы решились заблокировать доступ некому поисковому роботу к своему сайту во избежание зависаний и падений, а соответственно — во благо пользователей, то можно в файле .htaccess добавить такие зависи:

order allow,deny
allow from all
deny from xxx.xxx.xxx.xxx
deny from xxx.xxx.xxx.xxx
....

Где xxx.xxx.xxx.xxx — это IP-адреса, с которых идет больше всего нагрузки.

Кстати, это могут быть совсем не поисковые боты, а обычные люди, которые парсят ваш сайт по каким либо причинам.



6 комментариев на «robots.txt: Ограничение нагрузки от поисковых машин»

  1. Должно так быть, вот правда мне попадалась информация, что Гугловский бот игнорирует эту инструкцию.
    Кстати, очень симпатичный и полезный блог) Спасибо.

  2. Сделал так, но все равно нагрузка огромная . Боты одновременно набрасываются на сайт и создают нагрузку.

  3. admin:

    Может следует попробовать заблокировать доступ конкретным IP-адресам…

  4. У меня проблема с этим файлом, редактирую, загружаю на сайт, проверяю по ссылке, а он отображает старый вариант, хотя если захожу в файловый менеджер и загружаю сайта, то показывает мой, правильный, как быть? В чем может быть ошибка?

  5. Александр:

    Здравствуйте!!!Спасибо за статью!!!
    У меня такая проблема-в Яндекс.Вебмастер на графике отображается ошибка 500 по 33 ссылкам.Дело в том,что данная ошибка на самом деле отсутствует,а ошибки возникают из-за нагрузки.Страниц на сайте около 35 тыс,посещаемость в среднем 800 уник.в сутки.Обратился к знакомому,сказал что надо поменять частоту сканирования,что я и сделал.Кто-нибудь сталкивался с подобной проблемой?

  6. У меня то же прописал что вы указали нагрузка снизилась но ещё осталось.
    Что посоветуйте ещё?
    Допустимая нагрузка по тарифу для cpu: 120 для mysql: 1000
    Дата CPU MySQL
    2016-04-19 92.84 1875
    2016-04-18 80.23 1107
    2016-04-17 69.69 1905
    2016-04-16 56.98 1066
    2016-04-15 72.51 905
    2016-04-14 61.19 904
    2016-04-13 49.16 697

Добавить комментарий