Robots.txt — текстовый файл, в котором размещена инструкция управления поисковых роботов (ботов). Данный документ располагается среди основных файлов сайта и предназначается для автоматической блокировки некоторых действий ботов, в первую очередь, Robots.txt ограничивает индексацию.
Зачем нужен Robots.txt
После стремительного развития поисковых систем, автоматическая индексация сайтов стала негативно сказываться на работе ресурсов. Причина такого эффекта заключалась в том, что поисковые системы автоматически индексировали весь объём сайта до последней страницы. В результате, группой специалистов было решено создать специальный инструмент, который бы ограничивал работу поисковых систем. Таким образом, благодаря Robots.txt, поисковые роботы индексируют теперь лишь необходимые страницы ресурсов. В результате, негативное воздействие на работу сайтов значительно сохранилось, но при этом ключевая информация индексируется для поиска.
Принцип работы
После того, как поисковый робот попадает на определенный ресурс, он в первую очередь проводит анализ структуры сайта и изучает текстовый документ Robots.txt. В свою очередь, документ содержит информацию о том, какие папки нельзя индексировать и каким роботам запрещено проводить индексацию данного ресурса. Таким образом, документ Robots.txt может запрещать индексацию сайта для всех поисковых систем или же наоборот, разрешать индексирование всем возможным роботам. Кроме того, запрет на индексацию может быть прописан не только для всего ресурса, но и для отдельных папок. Конкретные папки, которые не следует индексировать, указываются в графе «Disallow» (русск. «запрещать»).
Документ Robots.txt. распознается всеми поисковыми системами и создается по достаточно простому шаблону. Тем не менее, существуют некоторые альтернативные инструменты, запрещающие индексацию, однако для популярнейших поисковиков Robots.txt. по-прежнему остается приоритетным.
Основные директивы Robots.txt
Если говорить об оформлении файла Robots.txt., то в отличие от HTML-документов или XM-карт, оно облегчается наличием непосредственных директив для поисковых систем. Рассмотрим основные директивы Robots.txt.
Являются самыми используемыми в Robots.txt .
Директива ‘Disallow’ используются для того, чтобы запретить доступ робота к сайту целиком или к некоторым частям сайта. Чтобы разрешить доступ робота к сайту целиком или к некоторым частям сайта используется директива’Allow’
Запрет всего сайта выглядит вот так: User-agent: * Disallow: /
Отдельные папки или файлы или маски для запрета индексирования указываются после слеша, при этом часть файлов из этих папок можно открыть, выглядеть это будет так:
User-agent: Yandex
Allow: /cgi-bin
Disallow: /
спецсимволы ‘*’ и ‘$’ используются при указании путей директив Allow-Disallow задавая, таким образом, определенные регулярные выражения.
Спецсимвол ‘*’ означает любую (в том числе пустую) последовательность символов. Примеры:
User-agent: Yandex
Disallow: /cgi-bin/*.aspx #
запрещает
'/cgi-bin/example.aspx'
#
и
'/cgi-bin/private/test.aspx'
Disallow: /*private #
запрещает
не
только
'/private',
#
но
и
'/cgi-bin/private'
Спецсимвол ‘$’
По умолчанию к концу каждого правила, описанного в robots.txt, приписывается ‘*’, например:
User-agent: Yandex
Disallow: /cgi-bin* # блокирует доступ к страницам
# начинающимся с '/cgi-bin'
Disallow: /cgi-bin # то же самое
Чтобы отменить ‘*’ на конце правила, можно использовать спецсимвол ‘$’, например:
User-agent: Yandex
Disallow: /example$ #
запрещает
'/example',
# но не запрещает '/example.html'
User-agent: Yandex
Disallow: /example #
запрещает
и
'/example',
#
и
'/example.html'
User-agent: Yandex
Disallow: /example$ #
запрещает
только
'/example'
Disallow: /example*$ #
так
же
,
как
'Disallow: /example'
#запрещает и /example.html и /example
Если необходимо сообщить роботу об использовании описания структуры сайта в формате sitemaps.xml, путь к sitemaps.xml можно указать в качестве параметра директивы ‘Sitemap’ (если файлов несколько, указываются все). Например:
User-agent: Yandex
Allow: /
Sitemap: http://mysite.ru/site_structure/my_sitemaps1.xml
Sitemap: http://mysite.ru/site_structure/my_sitemaps2.xml
Эта директива пригодится в случае, когда сервер сильно нагружен и не успевает отрабатывать запросы на закачку. Она позволяет задать поисковому роботу минимальный период времени (в секундах) между концом закачки одной страницы и началом закачки следующей.
Например:
User-agent: Yandex
Crawl-delay: 2 # задает таймаут в 2 секунды
User-agent: *
Disallow: /search
Crawl-delay: 4.5 #
задает
таймаут
в
4.5
секунды
Директива используется для описания динамических параметров, которые не влияют на содержимое веб-страниц сайта (например: идентификаторы сессий, пользователей, рефереров и т.п.). После этого робот Яндекса не будет многократно перезакачивать дублирующуюся информацию. Таким образом, увеличится эффективность обхода вашего сайта и снизится нагрузка на сервер.