На прошлой неделе я на собственной шкуре, верхнее на собственном железе, то есть на сервере, ощутил как Yahoo может “досить”.
На серваке крутятся несколько сайтов, объемом по несколько тысяч страниц, железяка довольно мощная, оперативки 2 гига, диски SCSI, скрипты сайтов адекватные, но Yahoo всё это ни по чем. Укладывает сервер на раз-два. Причем сайты не новые и в индексе Yahoo живут уже давно и в полном объеме.

Но, видать, Яха решила ревизию провести и её поисковые боты стали жрать всё подряд без устали, что и стало причиной “незапланированного отдыха”.
Хватаясь за валерьянку, я вспомнил, что весной с аналогичной проблемой столнулся Димок. Его способом противодействия стала дополнительная оптимизация скриптов, кэширование и при обострении временная блокировка Yahoo-пауков.
Но в комментариях я обнаружил интересный рецепт усмирения аппетитов яхиных ботов - директива файла robots.txt - Crawl-delay, которую Yahoo чтит и повинуется.
И так, что делать если подобный “дос” приключился и с вашим сервером?

Во-первых, бегом в логи - смотрим какой именно сайт стал предметом трепетной любви yahoo-пауков, и сразу же в файл robots.txt для этого сайта прописываем такую директиву:
User-agent: Slurp
Crawl-delay: X
где X - таймаут в секундах (я ставил 5)
перезаливаем robots.txt - “отпустить” должно довольно быстро. Во всяком случае, мне такой рецепт помог. Собственно, Yahoo и сама не против таких приемов, о чем в своих хелпах и пишет.

Удачи в любви с Yahoo пауками!


November 5th, 2007 at 05:32
все хорошо , что хорошо кончается.
November 8th, 2007 at 06:36
Я заранее знал, что боты могут творить неприятные вещи и сделал сайт на статике. Теперь хоть 100к в день - не проблема
June 7th, 2008 at 10:37
У меня когда Google и Яху заходят на форум, то в течении минут 20 выдается сообщение, что слишком много обращений к БД. Так как трафа с Яху вообще нет, так как форум русскоязычный, то я просто запретил ему индексировать форум