Что такое robots.txt и для чего он нужен

Файл robots.txt размещается в корневой директории сайта и описывает исключения для поисковых ботов. Придерживающийся стандартов бот проверяет сначала url «/robots.txt», если файл существует, то бот анализирует его содержимое на предмет наличия запретов к посещению определённых частей сайта. Имя файла не должно содержать заглавных букв. Записи в файле разделяются одной или несколькими пустыми строками. Комментарии в файле robots.txt начинаются знаком “#” и заканчиваются окончанием строки (строки, содержащие только комментарии игнорируются ботами и не являются разделителями записей).

User-agent
Имя бота, к которому применяются правила исключений на сайте. Можно прописать несколько строк с User-agent, в этом случае правила, описанные в данной записи будут применяться указанными ботами. Для описывания правил ботам, для которых отдельная запись не составлена применяют следующий параметр: «*» (в файле robots.txt может быть только одна запись User-agent: *).

Disallow

В данном поле прописывается полный или частичный путь к месту на сайте, посещение которого запрещено для бота. В каждой записи должно присутствовать как минимум одно поле Disallow. Пустое поле Disallow подразумевает разрешение боту посещать все директории и файлы сайта. Не допускается использование в данном поле регулярных выражений и символов подстановки.

Примеры для http://site.ru/
(Показывает как можно сочетать директивы в файле robots.txt но не несущий смысловой нагрузки)

User-agent: Yandex
Disallow: /test/
Disallow: /print.html
# Запрещает ботам Яндекса посещать папку http://site.ru/test/
# и файл http://site.ru/print.htmlUser-agent: Aport
User-agent: Googlebot
Disallow: /temp/img/
# Запрещает посещение ботами Google и Апорт http://site.ru/temp/img/

User-agent: StackRambler
Disallow:
# Для бота поисковой системы Рамблер разрешено посещение всех
# страниц и папок сайта

User-Agent: *
Disallow: /lesson.php?action=test
# Запрещает посещение всеми ботами, для которых не сделана
#отдельная запись,
# динамических страниц, начинающихся с http://site.ru/lesson.php?action=test
# например: http://site.ru/lesson.php?action=test&id=13
# чувствительно к порядку переменных в ссылке

Некоторые поисковые системы поддерживают дополнительные поля в файле robots.txt. Яндексом поддерживается директива Host, служащая для назначения основного зеркала:

User-agent: Yandex

Disallow: /test/

Host: site.ru

# разрешено посещение всех страниц и папок на сайте, кроме http://site.ru/test/

# основным зеркалом назначено http://site.ru/

User-agent: *

Disallow:

# всем ботам, кроме бота Яндекса, разрешено посещение всех страниц и

# папок на сайте

Запретить сайт к индексации полностью можно с помощью такого файла robots.txt

User-agent: *
Disallow: /

Наиболее актуальные для Рунета, на мой взгляд, боты:

(думаю, даже расшифровывать не требуется)

YandexGooglebotStackRambler

AportРекомендации по запрету к индексацииЧто не следует указывать в файле robots.txt:

— папки с административными файлами

— файлы, о которых посторонним вообще знать не стоит

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

Стоит запретить к индексации:

— документы «для печати»

— папки со скриптами

— папки с картинками (если у Вас не предвидится целевой аудитории с поиска по картинкам)

— сервисные страницы, такие как, например, страница с формой отправки письма администрации, схема проезда

Ошибки, допускаемые при составлении robots.txt

Как не надо делать:

Имя файла содержит заглавные буквы – Robots.txt или ROBOTS.TXT

Файл robots.txt размещается не в корневой директории

Пустая строка после поля User-agent

Отсутствие директивы Disallow

Использование в поле Disallow символов подстановки или регулярных выражений, например: «?», «*»

Больше одной строки «Disallow: *»

http://mastertalk.ru/topic6726.html