В простейшем файле robots.txt используются два правила.
- User-agent: робот, к которому применяется следующее правило
- Disallow: URL-адреса, которые необходимо заблокировать
Эти две строки рассматриваются как одна запись в этом файле. Можно включить любое необходимое число записей. в каждой из которых может содержаться несколько строк Disallow и User-agent.
Каждый раздел файла robots.txt обрабатывается отдельно; содержание предыдущих разделов не учитывается. Пример:
User-agent: * Disallow: /katalog1/ User-Agent: Googlebot Disallow: /katalog2/
В этом примере для поискового робота Googlebot будут закрыты только URL, включающие /folder2/.
Агенты пользователя User-agent и другие роботы
User-agent – это специальный робот поисковой системы. В базе данных роботов Интернета перечислено множество основных роботов. Можно задать запись для применения к конкретному роботу (указав его название) или указать, что она должна применяться ко всем роботам (с помощью звездочки). Запись, которая применяется ко всем роботам, выглядит следующим образом:
User-agent: *
Google использует несколько различных роботов (user-agent). Робот, используемый для поиска в Интернете, называется Googlebot. Другие наши роботы, например Googlebot-Mobile и Googlebot-Image, следуют правилам, заданным для робота Googlebot, однако для них можно указать отдельные правила.
Блокирование роботов User-agent
В строке Disallow перечисляются страницы, которые необходимо заблокировать. Можно указать конкретный URL или шаблон. Ввод должен начинаться с косой черты (/).
- Чтобы заблокировать весь сайт, используйте косую черту.
Disallow: /
- Чтобы заблокировать каталог и все его содержание, введите после названия каталога косую черту.
Disallow: /nenuzhnyj-katalog/
- Чтобы заблокировать страницу, укажите эту страницу.
Disallow: /lichnyj_file.html
- Чтобы удалить конкретное изображение из Картинок Google, добавьте следующие строки:
User-agent: Googlebot-Image Disallow: /kartinki/sobaki.jpg
- Чтобы удалить все изображения с вашего сайта из Картинок Google, добавьте следующие строки:
User-agent: Googlebot-Image Disallow: /
- Чтобы заблокировать все файлы определенного типа (например, GIF), используйте такую запись:
User-agent: Googlebot Disallow: /*.gif$
- Чтобы запретить сканирование страниц на вашем сайте, но сохранить отображение объявлений AdSense на этих страницах,
запретите все роботы, за исключением Mediapartners-Google. Это
предотвращает появление страниц в результатах поиска, позволяя роботу
Mediapartners-Google анализировать страницы, чтобы определить, какие
объявления нужно показывать. Робот Mediapartners-Google имеет отдельный
доступ к страницам, независимый от других агентов Google. Рассмотрим
пример.
User-agent: * Disallow: / User-agent: MediaPartners-Google Allow: /
Помните, что в командах учитывается регистр. Например, Disallow: /junk_file.asp
будет блокировать http://www.example.com/junk_file.asp, но разрешит
http://www.example.com/Junk_file.asp. Робот Google игнорирует пробелы (в
том числе пустые строки) и неизвестные директивы в robots.txt.
Googlebot поддерживает отправку файлов Sitemap через файл robots.txt.
Соответствие шаблону
Робот Googlebot (но не все поисковые системы) распознает некоторые типы соответствия шаблону.
- Чтобы обозначить последовательность символов, используйте
звездочку (*). Например, чтобы заблокировать доступ ко всем
подкаталогам, название которых начинается с private, добавьте следующие
строки:
User-agent: Googlebot Disallow: /lichnoe*/
- Чтобы заблокировать доступ ко всем URL, которые содержат
вопросительный знак (?) (то есть всех URL-адресов, которые начинаются с
имени домена и содержат вопросительный знак), добавьте в файл
robots.txt следующую запись:
User-agent: Googlebot Disallow: /*?
- Чтобы задать соответствие конечных символов URL-адреса, используйте символ $. Например, чтобы заблокировать доступ к URL, оканчивающемуся на .xls, используйте следующие строки:
User-agent: Googlebot Disallow: /*.xls$
Это соответствие шаблону можно использовать вместе с командой Allow. Например, если знак "?" обозначает идентификатор сеанса, можно исключить содержащие этот символ URL-адреса, чтобы робот Googlebot не сканировал повторяющиеся страницы. Но URL-адреса, заканчивающиеся на "?", могут являться версией страницы, которую необходимо включить в индекс. В таком случае можно создать в файле robots.txt следующую запись:
User-agent: * Allow: /*?$ Disallow: /*?
Disallow: / *? блокирует доступ ко всем URL со знаком вопроса (то есть ко всем URL, которые начинаются с имени домена и содержат строку, внутри которой встречается знак вопроса).
Allow: /*?$ разрешает доступ ко всем URL, оканчивающимся знаком вопроса (то есть ко всем URL, которые начинаются с названия домена и содержат строку, заканчивающуюся на ?, после которого нет других символов).
Сохраните созданный файл robots.txt, загрузив его или скопировав содержание файла в текстовый редактор и сохранив полученный файл с именем robots.txt. Сохраните файл в каталоге верхнего уровня своего сайта. Файл robots.txt должен располагаться в корневом каталоге домена и называться "robots.txt". Расположенный в подкаталоге файл robots.txt недействителен, поскольку роботы ищут его только в корневом каталоге домена. Например, http://www.example.com/robots.txt – правильное местоположение, а http://www.example.com/moysait/robots.txt – нет.