Но для начала давайте разберемся для чего, собственно, нужен файл robots.txt?
Файл robots.txt предназначен для того, чтобы указать поисковым работам поисковых систем (таких как Yandex, Rambler, Google, AltaVista и пр. ) какие файлы и папки необходимо запретить индексировать. Он должен быть расположен в корневой директории сайта.
Для очень маленьких html-сайтов, которые содержат 10-30 страниц необходимость файла robots.txt отпадает, так как все файлы такого сайта необходимо индексировать.
В случае же больших динамических сайтов появляется множество специальных страниц, совершенно не предназначенных для опубликования, а для обновления сайта необходима удобная внутренняя структура сайта и активное использование файла robots.txt.
К примеру, Yandex, для быстрого удаления из индекса директорий сайта требует прописывания этих директорий в файле robots.txt.
Файл robots.txt обычно выглядит так:
User-agent: *
Disallow: /delo.php
Disallow: /d123/
Disallow: /travel/dat/
В строке User-agent: указывается конкретный робот ( Yandex, StackRambler ) или * - все роботы. В строке Disallow указывается путь к папке или конкретному файлу, запрещенному к индексации (путь абсолютный, отсчитывается от корневой папки сайта). Чтобы разрешить доступ робота к некоторым частям сайта или сайту целиком, используйте директиву Allow. Пустых строк в файле между строкой User-agent и Disallow, Allow быть не должно.
Если вы используете карту сайта описанную с помощью формата 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
Если у вашего сайт имеет зеркала, специальный робот зеркальщик определит их и сформирует группу зеркал вашего сайта. В поиске будет участвовать только главное зеркало. Для этого Вы должны указать его robots.txt, используя директиву Host, определив в качестве ее параметра имя главного зеркала. Директива Host, как трактует Help Яндекса, не гарантирует выбор указанного главного зеркала, тем не менее, алгоритм при принятии решения учитывает ее с высоким приоритетом.
Пример: Если www.mydesite.ru главное зеркало сайта, то robots.txt для всех сайтов из группы зеркал выглядит так
User-Agent: *
Disallow: /forum
Disallow: /cgi-bin
Host: www.mydesite.ru
Так же можно задать время посещения поискового робота на странице вашего сайта, для этого можно воспользоваться директивой Crawl-delay. Она позволяет задать поисковому роботу минимальный период времени (в секундах) между концом закачки одной страницы и началом закачки следующей. Обязательно, в целях совместимости с роботами, директиву Crawl-delay необходимо добавлять в группе, начинающейся с записи "User-Agent", непосредственно после директив Disallow (Allow).
Яндекса поддерживает дробные значения Crawl-Delay, например, 0.5. Это не гарантирует, что поисковый робот будет заходить на ваш сайт каждые полсекунды, но дает роботу больше свободы и позволяет ускорить обход сайта.
Примеры:
User-agent: Yandex
Crawl-delay: 2 # задает таймаут в 2 секунды
User-agent: *
Disallow: /search
Crawl-delay: 4.5 # задает таймаут в 4.5 секунды
Как видите все достаточно легко и понятно. Используйте это на своих сайтах, тем самым вы поможете поисковому роботу правильно прочитать ваш веб-ресурс.
Алексей Фомичев - Руководитель и администратор проектов: Библиотека Интернет Бизнесмена - http://www.infowind.ru и Создание сайта в домашних условиях - http://www.mydesite.ru