пудель Элтон Файэри Данс

Назад к содержанию

Hosted by uCoz

Создание файла robots.txt

Инструкции роботам - паукам по индексации страниц сайта

 

Назначение файла robots.txt

Формат файла robots.txt

Мета-теги

Типичные ошибки в файле robots.txt

Проверка сайта на совместимость с поисковыми роботами.

 

Назначение файла robots.txt

Официальная версия:  Файл robots.txt очень важный файл т.к. при обращении поискового робота к сайту многие роботы запрашивают именно данный файл и не находя его просто не индексируют страници сайта. Единственное, для чего предназначен файл robots.txt - это закрывать от индексации файлы и каталоги. Делать это может выборочно, ориентируясь на имена роботов поисковых машин. Если проект предназначен для индексации поисковыми машинами, присутствие файла robots.txt в корневой папке сайта обязательно.

Практически проверенная информация: Возможно, это покажется несколько крамольным. По крайней мере, повсюду в Интернете декларируется важность этого файла. Так вот, без всякого robots.txt, сайт Элтона был выведен в первую десятку Яндекса и Гугла по запросу «пудель», в развивающемся  сайте (за 6 месяцев) было проиндексировано Яндексом 57 страничек из 62. Моё мнение: значительно важнее правильное составление мета-тегов, соответствие тегов «ключевые слова» и «описание» фактическому содержанию страниц, а так же правильная регистрация сайта в поисковиках, рейтингах и каталогах. Об этом можно прочитать здесь.

 

Формат файла robots.txt

   robots.txt — простой текстовый файл, который должен находиться в корневой директории сервера. Робот ищет robots.txt только в корневом каталоге Вашего сервера. Под именем сервера здесь понимаются доменное имя и, если он есть, порт.

   Размещать на сайте несколько файлов robots.txt, размещать robots.txt в подкаталогах бессмысленно: "лишние" файлы просто не будут учтены роботом. Таким образом, вся информация о запретах на индексирование подкаталогов сайта должна быть собрана в едином файле robots.txt в "корне" сайта.

   Имя robots.txt должно быть набрано строчными (маленькими) буквами, поскольку имена интернет-ресурсов (URI) чувствительны к регистру (ROBOTS.TXT, Robots.txt — неправильно).

   Каждая запись начинается одной или несколькими строками, где имя_поля=User-agent, после чего следует одна или несколько строк, где имя_поля=Disallow, имена полей, которые отличаются от двух указанных, игнорируются.

Знак «#» означает, что пробелы перед ним и все символы до конца строки являются комментарием. Строки, содержащие только комментарий, игнорируются и не могут использоваться для разделения записей.

   Для каждого робота пишется своя группа инструкций. Это означает, что робот может быть упомянут только в одной строке User-agent, и в каждой строке User-agent может быть упомянут только один робот.

   Исключение составляет строка User-agent: *. Она означает, что следующие за ней Disallow относятся ко всем роботам, кроме тех, для которых есть свои строки User-agent.

User-agent

  • Значением этого поля является имя робота, к которому применяются правила иключений;

  • Если строк с User-agent несколько, то для всех роботов применяются одинаковые правила, которые содержаться в текущей записи;

  • Если значение поля равно «*», то правила применяются к любому роботу, для которого нет отдельной записи. В файле robots.txt может быть только одна запись с User-agent: *.

Disallow

  • В записи должно быть хотя бы одно поле Disallow;

  • в поле Disallow указывается частичный или полный путь (URL), который не будет посещен;

  • пустое значение (Disallow: ) интерпретируется как разрешение на посещение любой страницы;

  • регулярные выражения и символы подстановки запрещены.

   В каждой группе, вводимой строкой User-agent, должна быть хотя бы одна инструкция Disallow. Количество инструкций Disallow не ограничено.

   Строка "Disallow: /dir" запрещает посещение всех страниц сервера, полное имя которых (от корня сервера) начинается с "/dir". Например: "/dir.html", "/dir/index.html", "/directory.html".

   Чтобы запрещать посещение именно каталога "/dir", инструкция должна иметь вид: " Disallow: /dir/".

   Для того, чтобы инструкция что-либо запрещала, указанный в ней путь должен начинаться с "/".    Соответственно, инструкция "Disallow:" не запрещает ничего,то есть все разрешает.

   Внимание: точно так же и инструкции "Disallow: *", " Disallow: *.doc", "Disallow: /dir/*.doc" не запрещают ничего, поскольку файлов, имя которых начинается со звездочки или содержит ее, не существует! Использование регулярных выражений в строках Disallow, равно как и в файле robots.txt вообще, не предусмотрено.

Любой текст от знака решетки "#" до конца строки считается комментарием и игнорируется.

META тег ROBOТS может управлять индексацией только той страницы, на которой он прописан. Значение тэга Robоts может состоять из следующих директив, разделенных запятыми:

  • Index - эта страница должна быть индексирована.

  • Noindex - эта страница не должна индексироваться.

  • Follow - прослеживать гиперссылки на странице.

  • Nofollow - не прослеживать гиперссылки на странице.

  • All - index, follow (по умолчанию).

  • None - noindex, nofollow.

Мета-теги

   В отличие от файлов robots.txt, описывающих индексацию сайта в целом, тег <meta name="Robots" content="..."> управляет индексацией конкретной web-страницы. При этом роботам можно запретить не только индексацию самого документа, но и проход по имеющимся в нем ссылкам.

   Тег ничего не меняет в работе робота поисковой машины, так как значение "all" принято по умолчанию. Но если эта страница создается динамически или очень часто обновляется, то нет смысла ее индексировать, так как информация о странице в поисковой машине и ее истинное содержание будут разными.
   В этом случае можно рекомендовать поисковой машине не индексировать эту страницу, а только отслеживать на ней гиперссылки, чтобы проиндексировать остальную часть сайта: .

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

   META-тег Robots имеет приоритет над директивами управления, заданными в файле robots.txt. То есть, если директивы управления в файле robots.txt разрешают индексировать все файлы в каталоге, то блокирующий META-тег может запретить индексирование страницы, находящейся в этом каталоге. Обратное невозможно, так как робот просто не узнает, что рекомендует META тег странички в заблокированном каталоге.

   Инструкции по индексации записываются в поле content. Возможны следующие инструкции:

NOINDEX - запрещает индексирование документа;
NOFOLLOW - запрещает проход по ссылкам, имеющимся в документе;
INDEX - разрешает индексирование документа;
FOLLOW - разрешает проход по ссылкам.
ALL - равносильно INDEX, FOLLOW
NONE - равносильно NOINDEX, NOFOLLOW
   Значение по умолчанию: <meta name="Robots" content="INDEX, FOLLOW">.

В следующем примере робот может индексировать документ, но не должен выделять из него ссылки для поиска дальнейших документов:

<META name="ROBOTS" content="index, nofollow">

Имя тега, названия и значения полей нечувствительны к регистру.

   Не все роботы воспринимают директивы META-тега ROBOTS в полном объеме. В основном возникают проблемы с директивами Follow и Nofollow

 

Типичные ошибки в файле robots.txt

   Ниже приведены примеры правильных и неправильных размещений robots.txt.

Правильные:
http://www.w3.org/robots.txt
http://w3.org/robots.txt
http://www.w3.org:80/robots.txt
(В данном случае все эти три ссылки ведут на один и тот же файл.)

Неправильные:
http://www.yoursite.ru/publick/robots.txt
http://www.yoursite.ru/~you/robots.txt
http://www.yoursite.ru/Robots.txt
http://www.yoursite.ru/ROBOTS.TXT

Одна из самых распространенных ошибок – перевернутый синтаксис.§

Неправильно:
User-agent: *
Disallow: Yandex

Правильно:
User-agent: Yandex
Disallow: *

§ Запись «Disallow» содержит несколько директив.

Неправильно:
User-agent: *
Disallow: /dir/ /cgi-bin/ /forum/

Правильно:
User-agent: *
Disallow: /dir/
Disallow: /cgi-bin/
Disallow: /forum/

 Ошибка при копировании файла. Часто robots.txt копируется в формате не§ Unix, а Dos. Несмотря на то, что из-за распространенности данной ошибки многие поисковые роботы уже могут правильно понимать данные из robots.txt, это считается ошибкой.

 Если при обработке ошибки 404 (документ не найден),
§ веб-сервер выдает специальную страницу, и при этом файл robots.txt отсутствует, то возможна ситуация, когда поисковому роботу при запросе файла robots.txt выдается та самая специальная страница, никак не являющаяся файлом управления индексирования.

 Ошибка, связанная с неправильным использованием регистра в файле§ robots.txt. Например, если необходимо закрыть директорию «cgi-bin», то в записе «Disallow» нельзя писать название директории в верхнем регистре «cgi-bin».

Неправильно:
User-agent: *
Disallow: /CGI-BIN/

Правильно:
User-agent: *
Disallow: /cgi-bin/

§ Ошибка, связанная с отсутствием открывающей наклонной черты при закрытии директории от индексирования.

Неправильно:
User-agent: *
Disallow: dir

User-agent: *
Disallow: page.html

Правильно:
User-agent: *
Disallow: /dir

User-agent: *
Disallow: /page.html

 

Проверка сайта на совместимость с поисковыми роботами.

И в заключении. Предварительный бесплатный анализ центральной страницы сайта (мета-тегов и файла robots.txt) на совместимость с поисковыми роботами можно провести на сайте scrubtheweb.com

Copyright Capt Crazy © 2007