Файл robots.txt
Когда робот-индексатор поисковой машины приходит на сайт, он прежде всего проверяет, нет ли в корневом каталоге сайта служебного файла robots.txt. Если робот обнаруживает этот документ, все дальнейшие действия по индексированию сайта осуществляются в соответствии с указаниями robots.txt. Вы можете запретить доступ к определенным каталогам и/или файлам своего сайта любым роботам-индексаторам или же роботам конкретной поисковой системы. Правда, инструкциям файла robots.txt (как и meta-тегов Robots) следуют только честные роботы.
Формат файла robots.txt - особый. Он состоит из записей, каждая из которых состоит из двух полей: строки с названием клиентского приложения (user-agent), и одной или нескольких строк, начинающихся с директивы Disallow:
<Поле> ":" <значение>Robots.txt должен создаваться в текстовом формате Unix. Большинство хороших текстовых редакторов уже умеют превращать символы перевода строки Windows в Unix. Либо ваш FTP-клиент должен уметь это делать. Для редактирования не пытайтесь пользоваться HTML-редактором, особенно таким, который не имеет текстового режима отображения кода.
Поле User-agentСтрока User-agent содержит название робота.
User-agent: StackRamblerВы можете создать инструкцию для всех роботов:
User-agent: *Поле Disallow:
Вторая часть записи состоит из строк Disallow. Эти строки - директивы для данного робота. В каждой группе, вводимой строкой User-agent, должна быть хотя бы одна инструкция Disallow. Количество инструкций Disallow не ограничено.Они сообщают роботу какие файлы и/или каталоги роботу неразрешено индексировать. Вы можете запретить индексацию файла или каталога.
Следующая директива запрещает индексацию каталога /cgi-bin/:
Disallow: /cgi-bin/Обратите внимание на / в конце названия директории. Это важно. Чтобы запрещать посещение именно каталога "/dir", инструкция должна иметь вид:
"Disallow: /dir/".
А строка
"Disallow: /dir"
запрещает посещение всех страниц сервера, полное имя которых (от корня сервера) начинается с "/dir". Например: "/dir.html", "/dir/index.html", "/directory.html".
Внимание: точно так же и инструкции "Disallow: *", "Disallow: *.doc", "Disallow: /dir/*.doc" не запрещают ничего, поскольку файлов, имя которых начинается со звездочки или содержит ее, не существует! Использование регулярных выражений в строках Disallow, равно как и в файле robots.txt вообще, не предусмотрено.
Записаная следующим образом директива запрещает индексацию файла index.htm находящегося в корне:
Disallow: /index.htmК сожалению, инструкций Allow в файлах robots.txt не бывает. Поэтому даже если закрытых для индексирования документов очень много, Вам все равно придется перечислять именно их, а не немногочисленные "открытые" документы. Продумайте структуру сайта, чтобы закрытые для индексирования документы были собраны по возможности в одном месте.
Если директива Disallow будет пустой, это значит, что робот может индексировать ВСЕ файлы. Как минимум одна директива Disallow должна присутствовать для каждого поля User-agent, чтобы robots.txt считался верным. Полностью пустой robots.txt означает то же самое, как если бы его не было вообще.
Пустые строки и комментарии
Пустые строки допускаются между группами инструкций, вводимыми User-agent.
Инструкция Disallow учитывается, только если она подчинена какой-либо строке User-agent - то есть если выше нее есть строка User-agent.
Любой текст от знака решетки "#" до конца строки считается комментарием и игнорируется.
Пример:
Следующий простой файл robots.txt запрещает индексацию всех страниц сайта всем роботам, кроме робота Рамблера, которому, наоборот, разрешена индексация всех страниц сайта.
# Инструкции для всех роботовРаспространенные ошибки:
User-agent: *
Disallow: /
# Инструкции для робота Рамблера
User-agent: StackRambler
Disallow:
- Перевернутый синтаксис:
User-agent: /
Disallow: StackRambler
User-agent: StackRambler
Disallow: /
- Несколько директив Disallow в одной строке:
Disallow: /css/ /cgi-bin/ /images/Правильно так:
Disallow: /css/
Disallow: /cgi-bin/
Disallow: /images/
05.02.2007