ROBOTS.TXT Зачем нужен, создание, настройка

ROBOTS.TXT Зачем нужен, создание, настройкаROBOTS.TXT сколько загадочности в этом названии!

Где роботы, а где мы с вами обычные веб-мастера. Но оказывается очень даже близко. Правда, если под роботами понимаются обычные программы.

Ну да ладно, а то погнало меня в сумбур.

Все привыкли к такому благу в интернете как поисковые системы. Многие начинают свою работу с Google или Яндекс. И не представляют себя без них.

А теперь задумайтесь! Каждый день в интернете появляются десятки тысяч сайтов.

Каким образом поисковые системы узнают о них?

Попробуем ответить:

  • в компаниях работает куча сотрудников, которые ходят по таким сайтам и заносят их в базу; (только представьте, какого размера нужно держать штат сотрудников которые этим бы занимались, ведь помимо новых, обновляются и старые сайты, на которые тоже нужно зайти и посмотреть, что изменилось)
  • создатели сайтов сами сообщают обо всех изменения; (не каждый создатель сайтов обладает достаточными знаниями для таких дел)
  • поисковые системы используют специальные программы, которые автоматически ходят по сайтам и заносят их в свою базу данных.

Как вы уже догадались третий ответ, и работает в реальности.

Эти программы называют «Поисковые роботы»

Поисковый робот – это что-то типа эмулятора пользователя. Он приходит на сайт, нажимает на ссылки, читает текст, который там написан, замеряет время загрузки сайта и т.д.

На момент написания статьи поисковые роботы уже прошли не малый путь эволюции.

И с большой вероятность научились отделять СДЛ (Сайты для людей) от ГС (Говно сайтов).

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

Которые хотят делать меньше, а получать больше.

Разобрав немного, что такое роботы мы и пришли к первому вопросу нашей темы:

Зачем нужен ROBOTS.TXT

Так как поисковые роботы еще далеки от идеала. Поисковые компании предлагают нам объединить усилия.

Сделать подсказку роботам:

  • на что обратить внимание;
  • что не нужно учитывать;
  • как правильно писать название вашего сайта;
  • и так далее;

Как вы уже догадались, все эти подсказки вписываются в файл «robots.txt»

А что нужно писать?

Вопрос правильный. Google и Яндекс предлагают вам инструкции по созданию таких файлов.

Что бы перейти к инструкциям просто кликните по ссылках на словах: Google и Яндекс.

Создание файла ROBOTS.TXT

ROBOTS.TXT — это обычный текстовый файл.

Поэтому открывает блокнот и нажимаем «сохранить как» и пишем название файла: «robots.txt» без скобок.

Вот и все файл создан. Его нужно положить в корень вашего сайта.

Но как вы понимает, он пуст и не содержит никаких подсказок поисковым роботам.

  • Да кстати если поисковый робот заходят на ваш сайт не нашел файла robots.txt. То считается, что доступ ему не ограничен. И он сам будет решать, что ему делать.

Поэтому переходим к другому вопросу

Настройка ROBOTS.TXT

Настройка конечно громко сказано 🙂

Здесь сделаю маленькое отступление. Некоторые виды директив могут быть понятны только определенным поисковым роботам.

Но большинство директив отвечают стандарту и правильно понимаются всеми видами поисковых роботов.

Так же я не берусь описывать все возможные директивы, которые применимы для создания robots.txt, так как это излишество и лишь внесет путаницу.

Поэтому я остановлюсь на самых важных и на основных правилах, на которые стоит обратить свое внимание.

Теперь немного скучноватая часть. Так придется использовать специальные слова.

Директива User-agent

Любой файл robots.txt начинается с директивы: User-agent

User-agent – указывает, для каких поисковых роботов предназначены команды.

Общий синтаксис директивы User-agent

1
User-agent: вид поискового робота

Пример:

1
User-agent: Yandex

Потом идет набор директив только для поискового робота Yandex

Пример:

1
User-agent: *

Потом идет набор директив для всех поисковых роботов.

!!! Стоит заметить в одном файле robots.txt может быть несколько директив User-agent

Пример:

1
2
3
4
5
User-agent:*

User-agent: Yandex

User-agent: Googlebot

Как видим у нас несколько разделов. Один задает директивы для всех поисковых роботов, а в две других для конкретных роботов.

И если робот Google зайдет в этот файл то он прочитает только, то, что идет после «User-agent: Googlebot».

«User-agent:*» и «User-agent: Yandex» будет проигнорировано.

Так же поступит робот Yandex, только прочитает то, что после «User-agent: Yandex»

Директива Disallow

Эта директива запрета. Позволяет запретить поисковому роботу вход в конкретную папку или закрыть доступ к целому сайту.

! Важно: Между User-agent и директивами Disallow нельзя ставить пустые строки. Они должны быть написаны одна под другой.

Общий синтаксис директивы Disallow

1
Disallow:  что закрывать

Теперь примеры:

Пример:

1
2
User-agent: *
Disallow: /

Мы запретили доступ ко всему сайту. Такой сайт не будет проиндексирован. И не появиться в результатах поисковых систем.

Пример:

1
2
User-agent: *
Disallow: /programm

В данном случае мы запретили доступ ко всем страницам, которые начинаются с «/programm»

Будут заблокированы:

  • / programm.html
  • / programming.html
  • /programm/index.html

Пример:

1
2
User-agent: *
Disallow: /programm/

Мы закрыли папку «programm» и соответственно все файлы, что были в ней.

Как видите, эти два примера почти одинаковы. Их различает лишь косая черта в конце слова programm. БУДЬТЕ ВНИМАТЕЛЬНЫ.

Пример:

1
2
User-agent: *
Disallow: /test1.html

Мы закрыли страницу «test1», которая лежит в корне сайта.

Пример:

1
2
User-agent: *
Disallow: /papka/test3.html

Мы закрыли страницу «test3», которая лежит в папке «papka», но при этом не тронули другие файлы, которые лежат в этой папке.

Что бы закрыть всю папку, нужно было написать:

1
2
User-agent: *
Disallow: /papka/

Для продолжения работы с директивой Disallow нам нужно познакомиться с ее сестрой.

Директива Allow

Эта директива наоборот открывает доступ к частям сайта либо к сайту в целом

! Важно: Между User-agent и директивами Disallow и Allow нельзя ставить пустые строки. То же самое относится и Disallow и Allow между собой. Они должны быть написаны одна под другой.

Общий синтаксис директивы Allow

1
Allow:  что открывать

Пример:

1
2
3
User-agent: *
Allow: / programm
Disallow: /

В данном случае мы запретили доступ ко всему сайту кроме папки «programm». К ней доступ мы открыли.

У вас появился вопрос: Почему я в примере вставил и директиву Disallow, когда мы говорим только об Allow?

Ответ будет прост как пять копеек. Пока вы не наставил кучу Disallow в своем файле robots.txt. Ваш сайт и так открыт. Директиве Allow попросту нечего делать.

Теперь, когда мы знакомы с этими директивами мы можем перейти ближе к их рассмотрению. Здесь начинается очень важные правила.

Если подойти к их составлению наплевательски могут появиться большие проблемы в отношениях с поисковыми системами.

Одновременное использование директив Disallow и Allow

! Если робот видит несколько директив для одного блока User-agent, то первым делом читаются самые ближние.

Пример:

1
2
3
User-agent: *
Allow: / programm
Disallow: /

Здесь мы закрыли все кроме папки «programm». Она остается открытой.

Пример:

1
2
3
User-agent: *
Disallow: /
Allow: / programm

А вот здесь весь сайт закрыт. Так как Allow уже не влияет на запрет.

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

Но не расстраивайтесь в конце статьи я дам подсказку, как увидеть мнение поисковых систем намного быстрее.

Использование директив Allow-Disallow без параметров

Можно не задавать параметры для директив Allow и Disallow. Просто нужно знать, что произойдет в этом случае.

Пример:

1
2
User-agent: *
Disallow:

Это равноценно тому, что доступ к сайту полностью открыт

Пример:

1
2
User-agent: Yandex
Allow:

С точностью до наоборот. Доступ закрыт полностью.

Использование спецсимволов «*» и «$»

Это символы маски.

Одним словом смотрим на примерах:

Использование символа *

Пример:

1
2
User-agent: *
Disallow: /cgi-bin/*.aspx

Внутри папки «cgi-bin» будут закрыты все файлы с расширение «.aspx» не зависимо от глубины вложенности.

Будут закрыты:

  • /cgi-bin/test.aspx
  • /cgi-bin/papka/zina.aspx
  • /cgi-bin/papka/papka2/ira.aspx

Пример:

1
2
User-agent: *
Disallow: /*private/

Закрывает все папки перед папкой «private»

Будут закрыты:

  • /cgi-bin/private/
  • /cgi-bin/papka/papka2/private/

Но стоит заметить, это коснется только тех папок, которые идут перед «priver»

Допустим, папки расположены так:

  • / — корень сайта; (не будет закрыта)
  • /html/ — папка, в которой лежат html файлы; (не будет закрыта)
  • /cgi-bin/private/ (будет закрыта вместе с cgi-bin);

Но это так на всяк случай. Что бы вы не пугались этого символа 🙂

Пример:

1
2
User-agent: *
Disallow: /lichnoe*/

В данном случае будут закрыты все папки, которые вложены в папку «lichnoe»

Но стоит заметить это равноценно, если было бы написано:

1
2
User-agent: *
Disallow: /lichnoe/

Использование символа $

Символ «$» отменяет «*» на конце команды

Пример:

1
2
User-agent: *
Disallow: /programm $

Закрывает «programm». Но оставляет открытым «programm.html»

Директива HOST

Я уже однажды писал статью – «Коротко о важном. ROBOTS.TXT: WWW или его отсутствие в название сайта»

Где говорил об этом, но пройдемся еще раз.

Если у вашего сайта есть несколько зеркал, то вы можете указать, какое из них является главным.

Cинтаксис директивы host

1
2
3
User-agent: *
Disallow:
Host:  ваш_ домен.ru

Пример:

1
2
3
User-agent: *
Disallow:
Host: webmasterprof.ru

Яндекс советует в целях совместимости писать директиву Host в блоке User-agent.

Так же можно указать порт, отделяя его двоеточием.

Пример:

1
2
3
User-agent: *
Disallow:
Host: webmasterprof.ru:80

Если ничего не указать, то робот сам прицепит порт «80».

Если вы хотите, что бы в названии присутствовало www, то нужно написать так:

Пример:

1
2
3
User-agent: *
Disallow:
Host: www.webmasterprof.ru

Стоит заметить директива host может быть не учтена поисковой системой. Но она берется во внимание с высоким приоритетом.

Директива Sitemap

Эта директива нужна только в том случае если вы используете описание структуры вашего сайта в формате «sitemaps.xml»

Если вы и понятия не имеете что это то. Я бы советовал вам узнать об этом подробнее и начать применять на своем сайте.

Синтаксис директивы Sitemap

1
Sitemap: http://адрес вашего сайта/sitemap.xml

Пример:

1
Sitemap: http://webmasterprof.ru/sitemap.xml

Что примечательно директиву «Sitemap» можно писать с отступом от блока «User-agent»

Пример:

1
2
3
4
User-agent:*
Disallow: /

Sitemap: http://webmasterprof.ru/sitemap.xml

Директива Crawl-delay

Это будет последняя директива, которую мы рассмотрим в рамках этой статьи.

Эта директива будет полезна для разгрузки сервера, на котором живет ваш сайт.

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

В целях совместимости со всеми поисковыми роботами директива Crawl-delay должна быть описана в блоке «User-Agent», после директив «Disallow» («Allow»).

Синтаксис Crawl-delay

1
Crawl-delay: время в секундах

Пример:

1
2
User-agent: *
Crawl-delay: 2

Мы дали команду поисковым роботам, что бы они выдерживали интервал в 2 секунды между загрузками страниц с вашего сайта.

После загрузки страницы, робот подождет 2 секунды и начнут загружать другую и т.д.

Вот мы и рассмотрели основные директивы для использования в файле robots.txt. Теперь думаю нужно подвести итоги пройденного материала и указать некоторые важные ошибки при составлении файла robots.txt.

Итоги

robots.txt – обычный текстовый файл.

В котором мы с помощью директив даем указания поисковым роботам.

Директивы должны быть собраны в блоки, которые начинаются с «User-agent»

Disallow – директива, которая запрещает поисковому роботу доступ.

Allow – директива которая разрешает поисковому роботу доступ.

* и $ — символы маски.

HOST – директива помогающая роботу определить главное зеркало вашего сайта.

Sitemap – директива, указывающая на расположение описания структуры вашего сайта в формате «sitemaps.xml»

Это основные директивы, которые нужны для создания эффективного файла robots.txt. Конечно, это далеко не весь список.

Теперь перейдем к возможным ошибкам при составлении файла robots.txt

Важные ошибки при создании robots.txt

Неправильное название файла robots.txt

Файл robots.txt должен быть написан только маленькими буквами.

Неправильно:

1
2
3
Robots.txt

ROBOTS.TXT

Правильно:

1
robots.txt

Использование отступов в блоках директив

Неправильно:

1
2
3
4
User-agent: *
Disallow: /

Allow: /programm

Правильно:

1
2
3
User-agent: *
Disallow: /
Allow: /program

Указание нескольких значений для одной директивы

Неправильно:

1
2
User-agent: *
Disallow: /programm/ /tag/ /papka/

Правильно:

1
2
3
4
User-agent: *
Disallow: /programm/
Disallow:/tag/
Disallow:/papka/

Отсутствие значения для директивы User-agent

Неправильно:

1
2
3
4
User-agent:
Правильно:
User-agent: *
User-agent: Yandex

Использование составных правил

Допустим, вы создали блок для всех поисковиков, а для Yandex робота еще и решили установить время с помощью директивы Crawl-delay

Неправильно:

1
2
3
4
5
6
7
8
9
User-agent: *
Disallow: /programm
Disallow: /trackback
Disallow: /feed
Allow: /wp-content/uploads
Host: webmasterprof.ru

User-agent: Yandex
Crawl-delay: 2

В итоге поисковый робот Яндекса прочитает только блок после User-agent: Yandex.

А блок после User-agent: * будет проигнорирован. То есть робот получит полные полномочия.

Правильно:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
User-agent: *
Disallow: /programm
Disallow: /trackback
Disallow: /feed
Allow: /wp-content/uploads
Host: webmasterprof.ru

User-agent: Yandex
Disallow: /programm
Disallow: /trackback
Disallow: /feed
Allow: /wp-content/uploads
Crawl-delay: 2
Host: webmasterprof.ru

Слишком большой размер файла robots.txt

Яндекс робот не возьмет файл robots.txt размером больше 32 кб. И будет считать, что ему полностью открыт доступ.

Для сокращения записей используйте символы маски.

Неправильное использования символа маски

1
2
User-agent: Yandex
Disallow: /programm/stroka*.html

Для закрытия файлов: stroka1, stroka2 и т.д.

Теперь многие бы захотели увидеть готовый файл robots.txt для использования на своем сайте.

Но, к сожалению это невозможно так у каждого структура каталогов отличается.

Приведу готовый файл для CMS WordPress который используется на моем блоге. В силу однотипности таких сайтов:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
User-agent: *
Disallow: /programm
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: /feed
Disallow: /comments
Disallow: /category/*/*
Disallow: */trackback
Disallow: */feed
Disallow: */comments
Disallow: /*?*
Disallow: /*?
Disallow: /tag
Disallow: /*?replytocom
Allow: /wp-content/uploads
Host: webmasterprof.ru

# Google Image
User-agent: Googlebot-Image
Disallow:
Allow: /*

# Google AdSense
User-agent: Mediapartners-Google*
Disallow:
Allow: /*

# Internet Archiver Wayback Machine
User-agent: ia_archiver
Disallow: /

# digg mirror
User-agent: duggmirror
Disallow: /

Sitemap: http://webmasterprof.ru/sitemap.xml

На этом данную статью завершаю.

Удачи Вам!!!

С уважением Тригуба Сергей

Проблемы с английским? репетитор английского языка легко исправит эту проблему.

Интересное — IOS 4.3 Первый взгляд

Автор:
Приглашаю присоединиться ко мне в следующих сервисах:
Получайте новые статьи по созданию сайтов на ваш почтовый ящик.

Комментарии Вконтакте:

Комментарии Facebook:

Комментариев32 комментария

Не будем слишком обольщаться нашими победами над природой. За каждую такую победу она нам мстит.

Ф. Энгельс

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

Написать ответ

Получай обновления блога первым!
Каталог@Mail.ru - каталог ресурсов интернет