Выглядит robots txt. Как редактировать файл robots txt

Создание самого файла

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

Для этого жмем правой кнопкой мыши по пустому пространству, выбираем Создать – Текстовый документ (не Word). Он откроется с помощью обычного блокнота. Назовите его robots, расширение у него и так уже правильное – txt. Это все, что касается создания самого файла.

Как составить robots.txt

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

Посмотреть у другого сайта, скопировать и изменить под структуру своего проекта.

Написать самому

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

Например, у вас на сайте есть каталог /source, где хранятся исходники к тем статьям, что вы пишите на блог, а у другого веб-мастера нет такой директории. И вы, к примеру, хотите закрыть папку source от индексации. Если вы скопируете robots.txt у другого ресурса, то там такой команды не будет. Вам придется дописывать свои инструкции, удалять ненужное и т.д.

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

Как писать свои инструкции роботам?

Первое, с чего начинается файл, это с указания того, к каким именно поисковым машинам обращены инструкции. Это делается так:

User-agent: Yandex Или User-agent: Googlebot

User - agent : Yandex

User - agent : Googlebot

Никаких точек с запятой в конце строчки ставить не нужно, это вам не программирование). В общем, тут понятно, что в первом случае инструкции будет читать только бот Яндекса, во втором – только Гугла. Если команды должны быть выполнены всеми роботами, пишут так: User-agent:

Отлично. С обращением к роботам мы разобрались. Это несложно. Вы можете представить это на простом примере. У вас есть трое младших братьев, Вася, Дима и Петя, а вы главный. Родители ушли и сказали вам, чтобы вы следили за ними.

Все трое чего-то просят у вас. Представь, что нужно дать им ответ так, как будто пишешь инструкции поисковым роботам. Это будет выглядеть примерно так:

User-agent: Vasya Allow: пойти на футбол User-agent: Dima Disallow: пойти на футбол (Дима в прошлый раз разбил стекло соседям, он наказан) User-agent: Petya Allow: сходить в кино (Пете уже 16 и он вообще в шоке, что должен у тебя еще и разрешения спрашивать, ну да ладно, пусть идет).

Таким образом, Вася радостно зашнуровывает кроссовки, Дима с опущенной головой смотрит в окно на брата, который уже думает, сколько голов забьет сегодня (Дима получил команду disallow, то есть запрет). Ну а Петя отправляется в свое кино.

Из этого примера несложно понять, что Allow – это разрешение, а Disallow – запрет. Но в robots.txt мы не людям раздаем команды, а роботам, поэтому вместо конкретных дел там прописываются адреса страниц и каталогов, которые нужно разрешить или запретить индексировать.

Например, у меня есть сайт site.ru. Он на движке wordpress. Начинаю писать инструкции:

User-agent: * Disallow: /wp-admin/ Disallow: /wp-content/ Disallow: /wp-includes/ Allow: /wp-content/uploads/ Disallow: /source/ Ну и т.д.

User - agent : *

Disallow : / wp - admin /

Disallow : / wp - content /

Disallow : / wp - includes /

Disallow : / source /

Нуит. д.

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

Ну и помните, я ранее в статье говорил о том, что у вас могут быть дополнительные каталоги? Вы можете их создать самостоятельно для различных целей. Например, на одном из моих сайтов есть папка flash, куда я кидаю флэш-игры, чтобы потом их запустить на сайте. Либо source – в этой папке могут хранится файлы, доступные пользователям для загрузки.

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

Команда Allow нужна как раз для того, чтобы уже в закрытых разделах открыть какие-то части. Ведь по умолчанию, если у вас не будет файла robots.txt, весь сайт будет доступен к индексированию. Это и хорошо (уж точно что-то важное не закроете по ошибке), и в то же время плохо (будут открыты файлы и папки, которых не должно быть в выдаче).

Чтобы лучше понять этот момент, предлагаю еще раз просмотреть этот кусок:

Disallow: /wp-content/ Allow: /wp-content/uploads/

Disallow : / wp - content /

Allow : / wp - content / uploads /

Как видите, сначала мы ставим запрет на индексацию всего каталога wp-content. В нем хранятся все ваши шаблоны, плагины, но там же есть и картинки. Очевидно, что их то можно и открыть. Для этого нам и нужна команда Allow.

Дополнительные параметры

Перечисленные команды – не единственное, что можно указать в файле. Также есть такие: Host – указывает главное зеркало сайта. Кто не знал, у любого сайта по умолчанию есть два варианта написания его доменного имени: domain.com и www.domain.com.

Чтобы не возникло проблем, необходимо указать в качестве главного зеркала какой-то один вариант. Это можно сделать как в инструментах для веб-мастеров, как и в файле Robots.txt. Для этого пишем: Host: domain.com

Что это дает? Если кто-то попытается попасть на ваш сайт так: www.domain.com – его автоматически перекинет на вариант без www, потому что он будет признан главным зеркалом.

Вторая директива – sitemap. Я думаю вы уже поняли, что в ней задается путь к карте сайта в xml-формате. Пример: http://domain.com/sitemap.xml

Опять же, загрузить карту вы можете и в Яндекс.Вебмастере, также ее можно указать в robots.txt, чтобы робот прочитал эту строчку и четко понял, где ему искать карту сайта. Для робота карта сайта так же важна, как для Васи – мяч, с которым он пойдет на футбол. Это все равно, что он спрашивает у тебя (как у старшего брата) где мяч. А ты ему:

посмотривзалезадиваном

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

Что дает настройка файла?

Об этом я также уже говорил ранее, но скажу еще раз. Благодаря четко настроенному файлу с командами для роботов вы сможете спать спокойнее зная, что робот не залезет в ненужный раздел и не возьмет в индекс ненужные страницы.

Я также говорил, что настройка robots.txt не спасает от всего. В частности, она не спасает от дублей, которые возникает из-за того, что движки несовершенны. Прям как люди. Вы то разрешили Васе идти на футбол, но не факт, что он там не натворит того же, что и Дима. Вот так и с дублями: команду дать можно, но точно нельзя быть уверенным, что что-то лишнее не пролезет в индекс, испортив позиции.

Дублей тоже не нужно бояться, как огня. Например, тот же Яндекс более менее нормально относится к сайтам, у которых серьезные технические косяки. Другое дело, что если запустить дело, то и вправду можно лишиться серьезного процента трафика к себе. Впрочем, скоро в нашем разделе, посвященном SEO, будет статья о дублях, тогда и будем с ними воевать.

Как мне получить нормальный robots.txt, если я сам ничего не понимаю?

В конце концов, создание robots.txt — это не создание сайта. Как-то попроще, поэтому вы вполне можете банально скопировать содержимое файла у любого более менее успешного блоггера. Конечно, если у вас сайт на WordPress. Если он на другом движке, то вам и сайты нужно искать на этих же cms. Как посмотреть содержимое файла на чужом сайте я уже говорил: Domain.com/robots.txt

Итог

Я думаю, тут больше не о чем говорить, потому что не надо делать составление инструкций для роботов вашей целью на год. Это та задача, которую под силу выполнить даже новичку за 30-60 минут, а профессионалу вообще всего-то за пару минут. Все у вас получиться и можете в этом не сомневаться.

А чтобы узнать другие полезные и важные фишки для продвижения и раскрутки блога, можете посмотреть наш уникальный . Если вы примените оттуда 50-100% рекомендаций, то сможете в будущем успешно продвигать любые сайты.

Это текстовый файл (документ в формате.txt), содержащий четкие инструкции для индексации конкретного сайта. Иначе говоря, данный файл указывает поисковиками, какие страницы веб-ресурса необходимо проиндексировать, а какие нет – запретить к индексации.

Казалось бы, зачем запрещать индексировать какое-то содержимое сайта? Дескать, пусть поисковый робот индексирует все без разбору, руководствуясь принципом: чем больше страниц, тем лучше! Так рассуждать может лишь дилетант от СЕО.

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

Поисковый робот, придя к вам на сайт, первым долгом пытается отыскать пресловутый robots.txt. Если этот файл им не обнаружен или обнаружен, но при этом он составлен неправильно (без необходимых запретов), «посланник» поисковой системы начинает изучать сайт по своему собственному усмотрению.

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

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

«User-agent:» – основная директива robots.txt

На практике в robots.txt с помощью специальных терминов прописываются директивы (команды), главной среди которых можно считать директиву «User-agent: ». Последняя используется для конкретизации поискового робота, которому в дальнейшем будут даваться те или иные указания. Например:

  • User-agent: Googlebot – все команды, которые последуют после этой базовой директивы, будет касаться исключительно поисковой системы Google (ее индексирующего робота);
  • User-agent: Yandex – адресат в данном случае отечественный поисковик Яндекс.

В файле robots.txt можно обратиться ко всем остальным поисковым системам вместе взятым. Команда в этом случае будет выглядеть так: User-agent: * . Под специальным символом «*» принято понимать «любой текст». В нашем случае – любые другие, кроме Яндекса, поисковики. Гугл, кстати, тоже воспринимает данную директиву на свой счет, если не обращаться лично к нему.

Команда «Disallow:» – запрет индексации в robots.txt

После основной директивы «User-agent:», обращенной к поисковым системам, могут следовать конкретные команды. В их числе самой распространенной можно считать директиву «Disallow: ». При помощи этой команды поисковому роботу можно запретить индексировать веб-ресурс целиком или какую-то его часть. Все зависит от того, какое расширение будет у данной директивы. Рассмотрим примеры:

User-agent: Yandex Disallow: /

Такого рода запись в файле robots.txt означает, что поисковому роботу Яндекса вообще не позволено индексировать данный сайт, так как запрещающий знак «/» стоит в гордом одиночестве и не сопровождается какими-то уточнениями.

User-agent: Yandex Disallow: /wp-admin

Как видно, на этот раз уточнения имеются и касаются они системной папки wp-admin в . То есть индексирующий робот посредством данной команды (прописанному в ней пути) откажется от индексации всей этой папки.

User-agent: Yandex Disallow: /wp-content/themes

Такое указание роботу Яндекса предполагает его допуск в большую категорию «wp-content », в которой он может индексировать все содержимое, кроме «themes ».

Исследуем «запретные» возможности текстового документа robots.txt дальше:

User-agent: Yandex Disallow: /index$

В данной команде, как следует из примера, используется еще один специальный знак «$». Его применение подсказывает роботу, что нельзя индексировать те страницы, в ссылках которых имеется последовательность букв «index ». При этом индексировать отдельный файл сайта с аналогичным названием «index.php » роботу не запрещено. Таким образом, символ «$» применяется в случае, когда необходим избирательный подход к запрету индексации.

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

User-agent: Yandex Disallow: *&*

Эта команда приказывает поисковому роботу Яндекса не индексировать все те страницы веб-сайта, в URL-адресах которых встречается символ «&». Причем этот знак в ссылке должен стоять между любыми другими символами. Однако может быть и другая ситуация:

User-agent: Yandex Disallow: *&

Тут запрет индексации касается всех тех страниц, ссылки которых заканчиваются на «&».

Если с запретом индексации системных файлов сайта вопросов быть не должно, то по поводу запрета индексировать отдельные страницы ресурса такие могут возникнуть. Мол, зачем это нужно в принципе? Соображений на сей счет у опытного веб-мастера может быть много, но главное из них – необходимость избавиться в поиске от дубликатов страниц. С помощью команды «Disallow:» и группы специальных символов, рассмотренных выше, бороться с «нежелательными» страницами можно довольно просто.

Команда «Allow:» – разрешение индексации в robots.txt

Антиподом предыдущей директивы можно считать команду «Allow: ». При помощи тех же самых уточняющих элементов, но используя данную команду в файле robots.txt можно разрешить индексирующему роботу вносить нужные вам элементы сайта в поисковую базу. В подтверждение – очередной пример:

User-agent: Yandex Allow: /wp-admin

По какой-то причине веб-мастер передумал и внес соответствующие корректировки в robots.txt. Как следствие, отныне содержимое папки wp-admin официально разрешено к индексации Яндексом.

Несмотря на то, что команда «Allow:» существует, на практике она используется не так уж и часто. По большому счету в ней нет надобности, поскольку она применяется автоматически. Владельцу сайта достаточно воспользоваться директивой «Disallow:», запретив к индексации то или иное его содержимое. После этого весь остальной контент ресурса, который не запрещен в файле robots.txt, воспринимается поисковым роботом как такой, который индексировать можно и нужно. Все как в юриспруденции: «Все, что не запрещено законом, – разрешено».

Директивы «Host:» и «Sitemap:»

Завершают обзор важных директив в robots.txt команды «Host: » и «Sitemap: ». Что касается первой, то она предназначается исключительно для Яндекса, указывая ему, какое зеркало сайта (с www или без) считать основным. На примере сайт это может выглядеть следующим образом:

User-agent: Yandex Host: сайт

User-agent: Yandex Host: www.сайт

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

В свою очередь директива «Sitemap: » указывает индексирующему роботу правильный путь к так называемой Карте сайта – файлам sitemap.xml и sitemap.xml.gz (в случае с CMS WordPress). Гипотетический пример может быть следующим:

User-agent: * Sitemap: http://сайт/sitemap.xml Sitemap: http://сайт/sitemap.xml.gz

Прописывание данной команды в файле robots.txt поможет поисковому роботу быстрее проиндексировать Карту сайта. Это, в свою очередь, также ускорит процесс попадания страниц веб-ресурса в поисковую выдачу.

Файл robots.txt готов – что дальше?

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

  • воспользоваться текстовым редактором (например, Notepad) для составления нужного вам robots.txt;
  • проверить корректность созданного документа, например, посредством данного сервиса Яндекса ;
  • при помощи FTP-клиента закачать готовый файл в корневую папку своего сайта (в ситуации с WordPress речь обычно идет о системной папке Public_html).

Да, чуть не забыли. Начинающему веб-мастеру, вне всякого сомнения, прежде чем экспериментировать самому, захочется сперва посмотреть на готовые примеры данного файла в исполнении других. Нет ничего проще. Для этого в адресной строке браузера достаточно ввести site.ru/robots.txt . Вместо «site.ru» – название интересующего вас ресурса. Только и всего.

Удачных экспериментов и спасибо, что читали!

Если вы читаете эту статью - у вас проблема в написании правильного robots.txt. Возможно вы знакомы с основами, видели несколько таких инструкцией для поисковых устройств, знаете принцип составления или же вовсе имеете богатый опыт составления этого файла. Прочитать статью будет полезно и интересно всем. Сегодня мы рассмотрим правила, ошибки и "хороший тон" составления правильного robots, а так же его коррекцию при использовании популярных CMS. Речь не пойдет об основах. Все элементарные правила создания и корректировки роботс должен знать каждый. А если вы не знаете их, то вам прямая дорога сначала в Помощь Яндекса , где подробно прочитаете как создать robots.txt.

Так же, если вы ищите как настроить файл robots.txt для переезда с HTTP на HTTPS, то вам сюда - Настройка SSL сертификата

Итак, поехали!

Роботов можно разделить на два отряда: "пауки" и "дятлы".

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

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

Ошибки составления robots.txt для сайта, которые мы встречали

Перепутанные инструкции

Я имел честь видел на своем опыте много файлов роботс, но бывали и совсем фантастические и невозможные. К примеру:

User-agent: /
Disallow: Yandex

Всем же, надеюсь, известно что правильно писать так:

User-agent: Yandex
Disallow: /

Указание нескольких правил в одной инструкции

Так же мне улыбнулась удача увидеть в своей жизни данное безобразие:

Disallow: /wp-admin/ /wp-includes/ /wp-feed/

В таком случае не понятно как поведет себя тот или иной робот поисковой системы. Один может воспринять данное правило вместе - Disallow: /wp-admin/wp-includes/wp-feed/ , другой взять первое правило (/wp-admin/) или последнее (/wp-feed/), а какой то вовсе не воспримет данную строку. Поэтому не рискуем и пишем правила построчно, в отдельных инструкциях:

Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-feed/

Ошибки в названии файла

Так же на моем веку встречались и совсем экзотичные случаи. Захотел я посмотреть роботс сайта, ввел в строку http://сайт.ru/robots.txt , а мне в ответ кукиш! "Наверное нет файла" - подумал я. Но когда залез в структуру сайта был шокирован! Встречались разные варианты написания:

  • R obots.txt (с заглавной буквы);
  • robot.txt (без s );
  • ROBOTS.TXT (!КАПСОМ!).

Правильно писать естественно "robots.txt".

Пустое значение в User-agent

Очень часто на недоработанных сайтах встречалась следующая конструкция:

User-agent:
Disallow:

Для кого она? Не понятно. Единственное из этого понятно, что данный посыл не дошел ни до одного робота. Правильно вписывать имя робота, для кого назначены ниже перечисленные инструкции:

User-agent: Googlebot
Disallow:

Взаимодействия инструкций Disallow и Allow

Очень часто вижу ошибочное написание разрешающих и запрещающих инструкций:

User-agent: Yandex
Disallow: /admin/
Disallow: /tools/
Allow: /kartinki/

Сначала, сразу же после User-agent должны быть правила разрешающие проход роботу, а уже после всех инструкций Allow должны следовать Disallow:

User-agent: Yandex
Allow: /kartinki/
Disallow: /admin/
Disallow: /tools/

Требование к составлению директивы Host

Некоторые копируют URL сайта и бессовестно, не глядя, вставляют его в директиву Host вместе с http:

Серьезная ошибка! Указывать протокол HTTP не нужно . А вот защищенный протокол HTTPS в robots.txt необходим, т.к. показывает роботу как правильно нужно позиционировать ресурс:

Так же не стоит запихивать в роботс.тхт несколько директив Host. Он всё равно прочитает и воспримет только первую. Так что размещаем Host в секции Yandex после всех правил:

User-agent: Yandex
Disallow: /admin/
Disallow: /tools/
Host: сайт

Запомните: директивы файла robots.txt, которые неправильно составлены - игнорируются! Например:

  • Host: www.-вашресурс.ru
  • Host: www.вашресурс-.ru
  • Host: www.вашресурс.ru:100000
  • Host: www.ваш_ресурс.ru
  • Host: .ваш-ресурс.ru:8000
  • Host: ваш..ресурс.ru
  • Host: ваш-ресурс.ru.
  • Host: 215.160.195.128
  • Host: www.вашресурс.ru:8080/
  • Host: www.первыйресурс.ru www.второйресурс.ru
  • Host: www.первыйресурс.ru,www.второйресурс.ru

Хороший тон создания файла robots.txt

В этом пункте мы рассмотрим "плохой стиль" создания robots.txt. У каждого кода или разметки есть свои негласные или прописанные правила, которым мало кто следует, из чего могут вытекать плачевные последствия. В случае с файлом запрета индексации могут возникнуть недопонимания робота поисковика с файлом или новый (следующий) программист проекта может не понять или долго разбираться в написанном. По этому избегаем следующих неприятных недоразумений.

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

Вообще такая запись возможна, но не желательна:

Disallow: /admin/ #запрещаем роботам индексировать каталог admin

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

Редирект страницы на 404-ю ошибку:

Бывают ситуации, при разработке свежего проекта, программист забывает про файл robots и при обращении "паука" к сайту, а это непременно произойдет без этого файла, ресурс переадресует его на другую страницу. Бывает что такой своеобразный редирект происходит без отдачи 404 Not Found. Чтобы этого избежать, советую положить в корень сайта правильный файл robots.txt. А ещё желательно не полениться и написать в нем:

User-agent: *
Disallow:

Это открытый роботс.тхт. Если нужно закрыть сайт от индексации на момент разработки или сложившихся ситуаций, то естественно применяем:

User-agent: *
Disallow: /

Заглавные буквы в инструкциях

USER-AGENT: YANDEX
DISALLOW: /ADMIN/

Тут без комментариев. Просто будьте людьми! Пишите правильно:

User-agent: Yandex
Disallow: /admin/

Перечисление всех файлов одного каталога

Встречал иногда, когда делал оптимизацию, примерно следующую конструкцию:

User-agent: Yandex
Disallow: /admin/backup/
Disallow: /admin/cache/
Disallow: /admin/components/
Disallow: /admin/modules/
Disallow: /admin/themes/
Disallow: /admin/wizards/

И таким образом прошлый программист закрыл все папки вложенности Admin. Хотя было достаточно написать просто:

User-agent: Yandex
Disallow: /admin/

Если уж нужно открыть какие то каталоги внутри закрываемой папки, то таким методом:

User-agent: Yandex
Allow: /admin/css/
Allow: /admin/images/
Disallow: /admin/

Написание дополнительных директив в секции

Некоторое время в нашей компании велись споры: где располагать директиву Host? В какой секции: в общей или после всех правил в конце файла? Наши сотрудники ходили на квалифицированные курсы в Unibrains, Топ Эксперт и т.д., приносили разные знания и видения этого вопроса. Такое чувство, что никто не знал как составить robots.txt и где правильнее написать эту директиву. На самом деле некоторые роботы могут неверно отреагировать на использование дополнительных директив, а это значит, что не стоит писать их в секции * - (для всех). Пишите Host в секции для робота Яндекса:

User-agent: Yandex
Disallow: /admin/
Host: сайт
User-agent: *
Disallow: /admin/

Отсутствие инструкции Disallow

Данная инструкция является обязательной и из-за её отсутствия робот может неправильно понять вас понять.

User-agent: Yandex
Host: сайт

Пишем правильно:

User-agent: Yandex
Disallow: /wp-admin/
Host: сайт

Отсутствие слешей при указании директории

Я провел эксперимент, чтобы показать, что отсутствие слешей в инструкции воспринимается роботом как ошибка.

Если хотим что то закрыть, пишем правило только со слешами!

User-agent: Yandex
Disallow: / blog/

Как и где прописать секцию Sitemap в robots

Достаточно часто встречал неправильную трактовку строки Sitemap. Дело в том, что её постоянно пытались куда то пристроить: то вписать для каждого агента, то не знаю как и куда разместить вписывали только в один агент после всех инструкций для бота. Правильно будет прописывать Sitemap в robots.txt после всех агентов в конце файла разделяя это правило пустой строкой после последней инструкции для последнего робота:

User-agent: * ...
Disallow: /poslednee-pravilo/
Sitemap: http://mysite.ru/sitemap.xml

Возможности robots.txt которые многие не используют

В этом пункте мы рассмотрим фишки и дополнительные команды для файла robots.txt, которые мало используют веб-мастера, оптимизаторы и программисты. Я не буду здесь разжевывать возможности Crawl-delay, Clean-param и других директив и правил, которые итак есть в help.yandex.

Взаимодействие обычных страниц и страниц для Google AdWords

Если вы хотите повесить на некоторые свои страницы интернет рекламу от Google, но не хотите чтобы эти страницы были в индексе Google, следует использовать агент Mediapartners-Google. Для этого блокируем страницы в для Google и открываем их (или весь сайт) для рекламы:

User-agent: Googlebot
Disallow: /admin/
Disallow: /search/
User-agent: Mediapartners-Google
Allow: /reklamnaya-stranica/

Но помним, что секция Mediapartners-Google должна находится после всех агентов включая "*" - для всех. Иначе получится что сначала вы разрешите боту пройти по данным страницам, а потом запретите и в итоге он ничего не сделает.

Взаимодействие обычных страниц и страниц для Яндекс Директа

Тоже самое что и с Google AdWords. Закрываем не нужное и открываем нужное для рекламы в агенте YaDirectBot:

User-agent: *
Disallow: /admin/
Disallow: /search/
Disallow: /reklamnaya-stranica/
User-agent: YaDirectBot
Allow: /reklamnaya-stranica/

Опять же не забываем размещать эту секцию ниже всех! Можно размещать YaDirectBot и Mediapartners-Google вместе снизу, перед инструкцией для Sitemap.

Открываем изображения для индексации в Яндекс Картинках и Google Images

Для того, чтобы ваши картинки на сайте попали в базы изображений Яндекса и Google, прописываем следующие агенты:

User-agent: Googlebot-Image
Allow: /themes/images/
User-agent: YandexImages
Allow: /themes/images/

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

Закрыть от индексации часть текста

Для начала хочу обратить внимание, что этот метод работает только в Яндексе и Рамблере! Гуглу этот тег до лампочки! Noindex - тег, который закрывает необходимую часть контента от индексации роботом. Он аналогичен мета-тегу noindex, но призван использоваться только в тексте. Обычно им закрывают от индексации счетчики.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus convallis viverra diam sed pretium. Nam ut orci ut arcu ornare pretium ut a diam. Nunc ac tempus augue. Morbi in molestie massa. In hac habitasse platea dictumst. In quis maximus libero. Ut varius dolor et justo hendrerit mollis. Vivamus at semper mi, et hendrerit lacus. Pellentesque quis mollis felis. Etiam eu hendrerit libero.

Тег noindex не валиден и при проверке валидатором отдает ошибку. Для того, чтобы он проходил проверку маскируем его под комментарий... . Такой метод работает!

Дмитрий Семенов

lockki.ru , независимый эксперт

Так или иначе, robots.txt нужно составлять по правилам. Для ускорения составления robots.txt я подготовил сборку файлов для 22 популярных CMS, которые просто надо чуть-чуть переделать под свой сайт.

10 правил составления файла robots.txt от Дмитрия

  1. Файл должен называться robots.txt и никак иначе.
  2. Лежать он должен в корне сайта, т.е. vashsite.ru/robots.txt
  3. Закрывайте все технические разделы: плагины, админку и т.п.
  4. Правила пишутся отдельно для каждого робота,т.е. в директиве User Agent только 1 робот и никаких перечислений.
  5. Если хотите назначить правила для всех роботов, то User-agent: *
  6. Host пишется только один раз и только для Яндекса, это User-agent: Yandex
  7. 1 директива = 1 значение, т.е. Disallow: /admin, и никаких Disallow: /admin /manage и т.п. в одной строчке.
  8. Disallow блокирует доступ, Allow разрешает доступ.
  9. Не закрывайте картинки от индексации.
  10. Закрывайте дубликаты основных страниц, которые формируются вашей CMS.

Виталий Кравченко

Руководитель агентства Webline Promotion , опытный оптимизатор и интернет-маркетолог, любитель экспериментов и опытов

На что нужно обратить внимание при составлении файла robots.txt

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

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

  1. Определяем статические функциональные страницы (админ-панель, корзины, страницы входа, страница напоминания пароля и.т.п.) – формируем список.
  2. Определяем динамические и типовые мусорные страницы (страницы печати, страницы сравнения, непродвигаемые наборы фильтров и.т.п.).
  3. Определяем папки с файлами и изображениями, которые не должны индексироваться.
  4. Формируем файл Robots.txt
При правильной подготовке данного файла вы получаете хорошую индексацию, правильное восприятие сайта роботами, правильное распределение веса и, конечно же, при дальнейших работах позиции и трафик на нужные нам страницы.

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

Для сайтов, работающих на платформе «Нубекс», файл с директивами создается автоматически и располагается по адресу domen.ru/robots.txt, где domen.ru — доменное имя сайта..ru/robots.txt.

Изменить robots.txt и прописать дополнительные директивы для поисковиков можно в админке сайта. Для этого на панели управления выберите раздел «Настройки» , а в нем — пункт «SEO» .

Найдите поле «Текст файла robots.txt» и пропишите в нем нужные директивы. Желательно активировать галочку «Добавить в robots.txt ссылку на автоматически генерируемый файл sitemap.xml »: так поисковый бот сможет загрузить карту сайта и найти все необходимые страницы для индексации.

Основные директивы для файла robots txt

Загружая robots.txt, поисковый робот первым делом ищет запись, начинающуюся с User-agent : значением этого поля должно являться имя робота, которому в этой записи устанавливаются права доступа. Т.е. директива User-agent — это своего рода обращение к роботу.

1. Если в значении поля User-agent указан символ «* », то заданные в этой записи права доступа распространяются на любых поисковых роботов, запросивших файл /robots.txt.

2. Если в записи указано более одного имени робота, то права доступа распространяются для всех указанных имен.

3. Заглавные или строчные символы роли не играют.

4. Если обнаружена строка User-agent: ИмяБота, директивы для User-agent: * не учитываются (это в том случае, если вы делаете несколько записей для различных роботов). Т.е. робот сначала просканирует текст на наличие записи User-agent: МоеИмя, и если найдет, будет следовать этим указаниям; если нет — будет действовать по инструкциям записи User-agent: * (для всех ботов).

Кстати, перед каждой новой директивой User-agent рекомендуется вставлять пустой перевод строки (Enter).

5. Если строки User-agent: ИмяБота и User-agent: * отсутствуют, считается, что доступ роботу не ограничен.

Запрет и разрешение индексации сайта: директивы Disallow и Allow

Чтобы запретить или разрешить поисковым ботам доступ к определенным страницам сайта, используются директивы Disallow и Allow соответственно.

В значении этих директив указывается полный или частичный путь к разделу:

  • Disallow: /admin/ — запрещает индексацию всех страниц, находящихся внутри раздела admin;
  • Disallow: /help — запрещает индексацию и /help.html, и /help/index.html;
  • Disallow: /help/ — закрывает только /help/index.html;
  • Disallow: / — блокирует доступ ко всему сайту.

Если значение Disallow не указано, то доступ не ограничен:

  • Disallow: — разрешена индексация всех страниц сайта.

Для настройки исключений можно использовать разрешающую директиву Allow . Например, такая запись запретит роботам индексировать все разделы сайта, кроме тех, путь к которым начинается с /search:

Неважно, в каком порядке будут перечислены директивы запрета и разрешения индексации. При чтении робот все равно рассортирует их по длине префикса URL (от меньшего к большему) и применит последовательно. То есть пример выше в восприятии бота будет выглядеть так:

— разрешено индексировать только страницы, начинающиеся на /search. Таким образом, порядок следования директив никак не повлияет на результат.

Директива Host: как указать основной домен сайта

Если к вашему сайту привязано несколько доменных имен (технические адреса, зеркала и т.д.), поисковик может решить, что все это — разные сайты. Причем с одинаковым наполнением. Решение? В бан! И одному боту известно, какой из доменов будет «наказан» — основной или технический.

Чтобы избежать этой неприятности, нужно сообщить поисковому роботу, по какому из адресов ваш сайт участвует в поиске. Этот адрес будет обозначен как основной, а остальные сформируют группу зеркал вашего сайта.

Сделать это можно с помощью директивы Host . Ее нужно добавить в запись, начинающуюся с User-Agent, непосредственно после директив Disallow и Allow. В значении директивы Host нужно указать основной домен с номером порта (по умолчанию 80). Например:

Host: test-o-la-la.ru

Такая запись означает, что сайт будет отображаться в результатах поиска со ссылкой на домен test-o-la-la.ru, а не www.test-o-la-la.ru и s10364.. скриншот выше).

В конструкторе «Нубекс» директива Host добавляется в текст файла robots.txt автоматически, когда вы указываете в админке, какой домен является основным.

В тексте robots.txt директива host может использоваться только единожды. Если вы пропишите ее несколько раз, робот воспримет только первую по порядку запись.

Директива Crawl-delay: как задать интервал загрузки страниц

Чтобы обозначить роботу минимальный интервал между окончанием загрузки одной страницы и началом загрузки следующей, используйте директиву Crawl-delay . Ее нужно добавить в запись, начинающуюся с User-Agent, непосредственно после директив Disallow и Allow. В значении директивы укажите время в секундах.

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

Существуют также и другие директивы для поисковых роботов, но пяти описанных — User-Agent, Disallow, Allow, Host и Crawl-delay — обычно достаточно для составления текста файла robots.txt.

В SEO мелочей не бывает. Иногда на продвижение сайта может оказать влияние всего лишь один небольшой файл — Robots.txt.

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

«Разве это возможно?», — спросите вы. Возможно. Для этого на вашем сайте должен быть файл robots.txt.

Как его правильно составить и залить на сайт – разбираемся в этой статье.

Готовый файл Robots.txt должен находиться в корневой папке сайта. Просто файл, без папки:

Хотите проверить, есть ли он на вашем сайте? Вбейте в адресную строку адрес: site.ru/robots.txt . Вам откроется вот такая страничка (если файл есть):

Файл состоит из нескольких блоков, отделённых отступом. В каждом блоке – рекомендации для поисковых роботов разных поисковых систем (плюс блок с общими правилами для всех), и отдельный блок со ссылками на карту сайта – Sitemap.

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

Каждый блок начинается директивой User-agent.

После каждой директивы ставится знак «:» (двоеточие), пробел, после которого указывается значение (например, какую страницу закрыть от индексации).

Нужно указывать относительные адреса страниц, а не абсолютные. Относительные – это без «www.site.ru». Например, вам нужно запретить к индексации страницу www.site.ru/shop . Значит после двоеточия ставим пробел, слэш и «shop»:

Disallow: /shop.

Звездочка (*) обозначает любой набор символов.

Знак доллара ($) – конец строки.

Вы можете решить – зачем писать файл с нуля, если его можно открыть на любом сайте и просто скопировать себе?

Для каждого сайта нужно прописывать уникальные правила. Нужно учесть особенности . Например, та же админпанель находится по адресу /wp-admin на движке WordPress, на другом адрес будет отличаться. То же самое с адресами отдельных страниц, с картой сайта и прочим.

Как правильно настроить Robots.txt

Как вы уже видели на скриншоте, первой идет директива User-agent. Она указывает, для какого поискового робота будут идти правила ниже.

User-agent: * — правила для всех поисковых роботов, то есть любой поисковой системы (Google, Yandex, Bing, Рамблер и т.п.).

User-agent: Googlebot – указывает на правила для поискового паука Google.

User-agent: Yandex – правила для поискового робота Яндекс.

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

Запретить индексацию: robots.txt Disallow

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

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

User-agent: *

Disallow: /

Таким образом всем поисковым роботам запрещено индексировать контент на сайте.

А вот так можно открыть сайт для индексации:

User-agent: *

Disallow:

Потому проверьте, стоит ли слеш после директивы Disallow, если хотите закрыть сайт. Если хотите потом его открыть – не забудьте снять правило (а такое часто случается).

Чтобы закрыть от индексации отдельные страницы, нужно указать их адрес. Я уже писала, как это делается:

User-agent: *

Disallow: /wp-admin

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

Что нужно закрывать от индексации в обязательном порядке:

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

Можно закрыть от индексации и отдельные типы файлов. Допустим, у вас на сайте есть некоторые.pdf-файлы, индексация которых нежелательна. А поисковые роботы очень легко сканируют залитые на сайт файлы. Закрыть их от индексации можно следующим образом:

User-agent: *

Disallow: /*. pdf$

Разрешить индексацию: robots.txt Allow

Даже при полностью закрытом от индексации сайте можно открыть роботам путь к определённым файлам или страницам. Допустим, вы переделываете сайт, но каталог с услугами остается нетронутым. Вы можете направить поисковых роботов туда, чтобы они продолжали индексировать раздел. Для этого используется директива Allow:

User-agent: *

Allow: /uslugi

Disallow: /

Главное зеркало сайта: robots.txt

До 20 марта 2018 года в файле robots.txt для поискового робота Яндекс нужно было указывать главное зеркало сайта через директиву Host. Сейчас этого делать не нужно – достаточно .

Что такое главное зеркало? Это какой адрес вашего сайта является главным – с www или без. Если не настроить редирект, то оба сайта будут проиндексированы, то есть, будут дубли всех страниц.

Карта сайта: robots.txt sitemap

После того, как прописаны все директивы для роботов, необходимо указать путь к Sitemap. Карта сайта показывает роботам, что все URL, которые нужно проиндексировать, находятся по определённому адресу. Например:

Sitemap: site.ru/sitemap.xml

Когда робот будет обходить сайт, он будет видеть, какие изменения вносились в этот файл. В итоге новые страницы будут индексироваться быстрее.

Директива Clean-param

В 2009 году Яндекс ввел новую директиву – Clean-param. С ее помощью можно описать динамические параметры, которые не влияют на содержание страниц. Чаще всего данная директива используется на форумах. Тут возникает много мусора, например id сессии, параметры сортировки. Если прописать данную директиву, поисковый робот Яндекса не будет многократно загружать информацию, которая дублируется.

Прописать эту директиву можно в любом месте файла robots.txt.

Параметры, которые роботу не нужно учитывать, перечисляются в первой части значения через знак &:

Clean-param: sid&sort /forum/viewforum.php

Эта директива позволяет избежать дублей страниц с динамическими адресами (которые содержат знак вопроса).

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

Эта директива придёт на помощь тем, у кого слабый сервер.

Приход поискового робота – это дополнительная нагрузка на сервер. Если у вас высокая посещаемость сайта, то ресурс может попросту не выдержать и «лечь». В итоге робот получит сообщение об ошибке 5хх. Если такая ситуация будет повторяться постоянно, сайт может быть признан поисковой системой нерабочим.

Представьте, что вы работаете, и параллельно вам приходится постоянно отвечать на звонки. Ваша продуктивность в таком случае падает.

Так же и с сервером.

Вернемся к директиве. Crawl-delay позволяет задать задержку сканирования страниц сайта с целью снизить нагрузку на сервер. Другими словами, вы задаете период, через который будут загружаться страницы сайта. Указывается данный параметр в секундах, целым числом:



В продолжение темы:
Android

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