Стандарт исключения для роботов — метод ограничения действий поисковых роботов на сайте. Стандарт не является официальным его применение носит добровольный характер.
Метод исключения реализуется через файл robots.txt и позволяет закрывать от индексации определенные страницы сайта или весь сайт
Файл robots.txt, сформированный в соответствии со стандартом, представляет собой обычный текстовый файл, который размещается в корне сайта и имеет адрес:
site.name/robots.txt
Каждая запись в файле содержит непустые строки вида:
<поле>:<необязательный пробел><значение><необязательный пробел>
поле — это либо User-agent, либо Disallow.
Директива User-agent:
User-agent: — указывает робота, для которого предназначены инструкции.
Пример:
User-agent:Yandex
User-agent:Google
или
User-agent:* — для всех. Такая запись должна быть одна в файле
Директива Disallow:
Disallow: — указывает ограничения для робота.
Пример. Запретить доступ к страницам, начинающимся с /contact: /contact.html, /contact.php, /contact/index.html, /contact/chef:
Disallow:/contact
Запретить доступ строго для /contact/:
Disallow:/contact/
Запретить доступ ко всему сайту:
Disallow: /
Нестандартные директивы
Allow: — разрешает доступ к ресурсу. Поддерживается всеми основными поисковиками.
Пример. Разрешен доступ к файлу petr.html, а доступ ко всей остальной информации в каталоге /contact запрещен.
Allow: /contact/petr.html
Disallow: /contact/
Sitemap: указывает расположение файлов Sitemaps, которые могут показать, что именно нужно проиндексировать поисковому роботу.
Пример:
Sitemap: http://example.com/sitemap.xml
Адрес указывается вместе с протоколом
Применение спецсимволов
В директивах Disallow и Allow допускается использование специальных символов '*' и '$'.
Спецсимвол '*' означает любую (в т.ч. пустую) последовательность символов.
Пример:
User-agent: *
Disallow: /*personal # заблокированы '/personal' и '/scripts/personal'
Disallow: /personal* # равносилен "Disallow: /personal"
Спецсимвол '$' отменяет дописанный в конец урла символ '*', точно указывая на конец строки.
Пример:
User-agent: *
Disallow: /home$
заблокирован 'home', но открыт '/home_main.php