Путь к статье: Главная » Для сайта

Robots.txt — это текстовый файл, который располагается в корне сайта - http://site.ru/robots.txt. Главное его предназначение - это задавать определённые директивы поисковым системам - что и когда делать на сайте.

Самый простой Robots.txt

Самый простой robots.txt, который всем поисковым системам, разрешает всё индексировать, выглядит вот так:

User-agent: *
Disallow:

Если у директивы Disallow не стоит наклонный слеш в конце, то разрешены все страницы для индексации.

Такая директива полностью запрещает сайт к индексации:

User-agent: *
Disallow: /

User-agent - обозначает для кого предназначены директивы, звёздочка обозначает что для всех ПС, для Яндекса указывают User-agent: Yandex.

В справке Яндекса написано, что его поисковые роботы обрабатывают User-agent: *, но если присутствует User-agent: Yandex, User-agent: * игнорируется.

Директивы Disallow и Allow

Существуют две основные директивы:

Disallow – запретить

Allow – разрешить

Пример: На блоге мы запретили индексировать папку /wp-content/ где находятся файлы плагинов, шаблон и.т.п. Но так же там находятся изображения, которые должны быть проиндексированы ПС, для участия в поиске по картинкам. Для этого надо использовать такую схему:

User-agent: *
Allow: /wp-content/uploads/ # Разрешаем индексацию картинок в папке uploads
Disallow: /wp-content/

Порядок использования директив  имеет значение для Яндекса, если они распространяются на одни страницы или папки. Если вы укажите вот так:

User-agent: *
Disallow: /wp-content/
Allow: /wp-content/uploads/

Изображения не будут загружаться роботом Яндекса с каталога /uploads/, потому что исполняется первая директива, которая запрещает весь доступ к папке wp-content.

Google относится проще и выполняет все директивы файла robots.txt, вне зависимости от их расположения.

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

Disallow: /about  Запретит доступ ко всему каталогу site.ru/about/, так же не будут индексироваться страницы которые содержат about - site.ru/about.html, site.ru/aboutlive.html и.т.п.

Disallow: /about/ Запретит индексацию роботам страниц в каталоге site.ru/about/, а страницы по типу site.ru/about.html и.т.п. будут доступны к индексации.

Регулярные выражения в robots.txt

Поддерживается два символа, это:

* - подразумевает любой порядок символов.

Пример:

Disallow: /about* запретит доступ ко всем страницам, которые содержат about, в принципе и без звёздочки такая директива будет так же работать. Но в некоторых случаях это выражение не заменимо. Например, в одной категории имеются страницы с .html на конце и без, чтобы закрыть от индексации все страницы которые содержат html, прописываем вот такую директиву:

Disallow: /about/*.html

Теперь страницы site.ru/about/live.html закрыта от индексации, а страница site.ru/about/live открыта.

Ещё пример по аналогии:

User-agent: Yandex
Allow: /about/*.html #разрешаем индексировать
Disallow: /about/

Все страницы будут закрыты, кроме страниц которые заканчиваются на .html

$ - обрезает оставшуюся часть и обозначает конец строки.

Пример:

Disallow: /about - Эта директива robots.txt запрещает индексировать все страницы, которые начинаются с about, так же идёт запрет на страницы в каталоге /about/.

Добавив в конце символ доллара - Disallow: /about$ мы сообщим роботам, что нельзя индексировать только страницу /about, а каталог /about/, страницы /aboutlive и.т.п. можно индексировать.

Директива Sitemap

В этой директиве указывается путь к Карте сайта, в таком виде:

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

Директива Host

Она предназначена только для Яндекса, потому что он с помощью неё определяет главные зеркала сайта и склеивает их по ней. Про склейку сайтов, в обеих поисковых системах, читайте в моём посте - Как я склеивал сайт в Яндексе и Google.

Указывается в таком виде:

Host: site.ru

Без http://, наклонных слешей и тому подобных вещей. Если у вас главное зеркало сайта с www, то пишите:

Host: www.site.ru

Пример robots.txt для WordPress

После того, когда были добавлены все нужные директивы, которые описаны выше. Вы должны получить примерно вот такой файл robots:

Скрытый текст

Это так сказать базовый вариант robots.txt для wordpress. Здесь присутствует два User-agent-a – один для всех и второй для Яндекса, где указывается директива Host.

Мета-теги robots

Существует возможность закрыть от индексации страницу или сайт не только файлом robots.txt, это можно сделать при помощи мета-тега.

<meta name="robots" content="noindex,nofollow">

Прописывать его надо в теге <head> и этот мета тег запретит индексировать сайт. В WordPress существуют плагины, которые позволяют выставлять такие мета теги, например – Platinum Seo Pack. С помощью него можно закрыть от индексации любую страницу, он использует мета-теги.

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

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

User-agent: *
Crawl-delay: 5

Таймаут между загрузкой двух страниц будет равен 5 секундам. Чтобы уменьшить нагрузку на сервер, обычно выставляют 15-20 секунд. Это директива нужны для больших, часто обновляемых сайтов, на которых поисковые боты просто «живут».

Для обычных сайтов/блогов эта директива не нужна, но можно таким образом ограничить поведение других не актуальных поисковых роботов (Rambler, Yahoo, Bing) и.т.п. Ведь они тоже заходят на сайт и индексируют его, создавая тем самым нагрузку на сервер.

Проверить robots.txt

Чтобы проверить robots.txt для Google, надо зайти в панель вебмастер:

robots

Конфигурация сайта -> Доступ для сканера -> Проверить robots.txt

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

Проверить robots.txt для Яндекса можно тоже в его Панели Вебмастер, перейдя вот по этой ссылки.

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

1. Seobook

генераторы роботса

2. 4seo.biz

генераторы роботса

На этом всё, спасибо за внимание и не забываем подписываться на обновление блога.


Поделитесь записью:
Комментарии
  1. Дмитрий

    Статейка потрясающая, все собрано воедино и не надо лазить по инету и искать решение на разные проблемы. Спс=)

  2. Апатик

    Оличная сатья, нашел ответ на свой вопрос. Ранее не знал о существовании Crawl-delay. Буду эксперементировать

  3. Nitrox

    Привет! Статья получилась информативной, молодца. Как отдохнул с сеошниками на днях?

  4. Webumniza

    Добрый день! спасибо за интересную статью. у меня такая проблема — стала анализировать количество страниц в Индексе гугла и обнаружила ссылки такого рода — он индексирует все подряд, включая сохраненные копии и служебные файлы. Каким обрахом я могу убрать эти страницы из индекса, чтобы не попасть при этом в бан?

  5. Cospi

    Запретить индексацию служебных файлов в роботсе, как описано в статье — Disallow: /служебные-файлы

  6. Вячеслав

    Если я хочу закрыть пагинацию в рубриках. А ссылки данных страниц имеют вид site.ru/category/about/page/2/ Мне нужно добавить строку Disallow: /*/*/page/*/ Правильно или есть запись полегче в плане символов?

  7. Вячеслав

    И ещё вопросик если можно. Накопилось вопросов очень много, информацию искал давно так, но нормального объяснения так и не нашел. Если я добавлю строку Disallow: /*?* Оно же будет запрещать все URL с знаком «?» И мне не придётся добавлять такие строки как Disallow: /?s= Disallow: /?p= Disallow: /?feed=* Disallow: /?replytocom=* Disallow: /?page_id=* Disallow: /?preview=* Правильно?

  8. Cospi

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

  9. Cospi

    Лучше записать вот так: Disallow: /category/about/page Хотя ваша запись может быть тоже работает, надо просто проверить её.

  10. urbix

    Скажите пожалуйста, а зачем использовать директиву Disallow: /tag, ведь я так понимаю, через данную директиву мы даём понять боту, что нужно запретить к индексации метки, а зачем? ведь метки участвуют в продвижении.

  11. Cospi

    Метки — это дубликаты контента на сайте, если вы начнёте продовать ссылки и у вас будет очень много открытых меток для индексации, то попадёте под АГС, если у вас на сайте 5-10 меток, то это не страшно.

  12. Таня

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

  13. Cospi

    Потом можете выложить ваш файлик, посмотрим вместе на него, если что не правильно, помогу исправить.

  14. Михаил Бондаренко

    Здравствуйте! Извините что не по теме, подскажите пож. название плагина для создания таких же форм для цитирования кодов в постах.

  15. Михаил Бондаренко

    Благодарю, установил, не могу разобраться как пользоваться. Есть инструкция?

  16. Cospi

    После активации, в редакторе добовляется дополнительная кнопка cc, выделяете код в тексте, нажимаете эту кнопку и вводите название языка для кода, который вы выделяете. Например — html, php, css и.т.п. Все языки описаны в файле readme.txt в папке с плагином.

  17. Василий

    Запутался с robots но составил такое: User-agent: * Disallow: /cgi-bin/ Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /xmlrpc.php Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /page/ Disallow: /trackback/ Disallow: /feed/ Disallow: /comments/ Disallow: */trackback/ Disallow: */feed/ Disallow: */comments/ Disallow: /?feed= Disallow: /?s= Disallow: /*?* Disallow: /*? Allow: /wp-content/uploads # 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://www.mlm-to4ka.ru/sitemap.xml Disallow: /tag может что-то лишнее? если не влом подскажите)

  18. Cospi

    Я бы не стал писать отдельные блоки для Адсенс, гугл картинок, всё это и есть лишнее. Верхняя часть вроде всё не нужное закрывает, только добавте ещё такой же блок для Яндекса с директивой host. И ссылку на карту сайта не правильно указали.

  19. freshdomen.ru

    Спасибо за развернутый ответ) все как то руки не доходили до робот.тхт, на выходных попробую

  20. Cospi

    Вы про ссылки на ответы (reply)? То лучше их закрыть в роботсе, хотя часто Гугл их игнорирует.

  21. Простой

    Я в принципе хочу узнать надо ли писать там что-то типа такого: Disallow: /comments/

  22. Простой

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

  23. Cospi

    Коментарии это не ссылка, а текст и скрыть их можно с помощью тегов noindex.

  24. seo-noob

    Уже долго ищу и не могу найти конкретную информацию по пунктам, что нужно запретить для индексирования, а что оставить. Понял, что картинки лучше оставить для поиска по картинкам. А что насчет модулей, плагинов, флеш, pdf, doc, css файлов и т.д.? Скажите, пожалуйста, что нужно, а что нет?!

  25. Влад

    Да, но а как же страницы с публикациями? Они же /?p, зачем их запрещать к индексации командой Disallow: /?p=. Я у себя сделал только Disallow: /?cat Disallow: /?m

  26. Алексей

    User-agent: * Disallow: /forum/ Disallow: /feedback.html Disallow: /reg.html Disallow: /login-enter.html Disallow: /order.html Disallow: /login.html Host: http://www.site.ru Вопрос в том, правильно ли я прописал странички с html на конце? ведь у меня не закрывает слэшь (/).

  27. Cospi

    Пожалуйста, подписывайтесь на обноление сайта. Ещё будет очень много интерестных постов.

  28. Cospi

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

  29. sash

    Здравствуйте. Подскажите, что не так с моим роботом.

    User-agent: * Allow: /wp-content/uploads/ Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /feed/ Disallow: /cgi-bin Disallow: /wp-admin/ Disallow: /wp-includes/ Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /trackback Disallow: */comments Disallow: /category/*/* Disallow: */trackback Disallow: */*/trackback Disallow: */*/feed/*/ Disallow: */feed Disallow: /?s= Disallow: /?tag User-agent: Yandex Allow: /wp-content/uploads/ Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /feed/ Disallow: /cgi-bin Disallow: /wp-admin/ Disallow: /wp-includes/ Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /trackback Disallow: */comments Disallow: /category/*/* Disallow: */trackback Disallow: */*/trackback Disallow: */*/feed/*/ Disallow: */feed Disallow: /?s= Disallow: /?tag Host: domashniydom.ru Sitemap: http://domashniydom.ru/sitemap.xml
  30. Cospi

    Я подправил ваш роботс, просто скопируйте его в свой файлик robots.txt и ваш сайт начнёт индексироваться. Вся проблема была в строчке: Disallow: /*?* Так как у вас не настроена ЧПУ, то все адреса страниц содержат вопросительный знак в урл, а вы закрыли этой строчкой от индексации их.

  31. Марина

    У меня все шло хорошо, страницы индексировались по мере их публикации, но 4 дня назад яндекс просто выкинул все из индекса, оставил только главную. Ничего не могу понять, советуют изменить робот текст, но не знаю, что там не так относительно моего сайта. Помогите, если можно. User-agent: * Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /feed/ Disallow: /cgi-bin Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /trackback Disallow: */comments Disallow: /category/*/* Disallow: */trackback Disallow: */*/trackback Disallow: */*/feed/*/ Disallow: */feed Disallow: /*?* Disallow: /?s= User-agent: Yandex Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /feed/ Disallow: /cgi-bin Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /trackback Disallow: */comments Disallow: /category/*/* Disallow: */trackback Disallow: */*/trackback Disallow: */*/feed/*/ Disallow: */feed Disallow: /*?* Disallow: /?s= Host: vse-o-karkasax.ru Sitemap: _http://vse-o-karkasax.ru/sitemap.xml.gz Sitemap: _http://vse-o-karkasax.ru/sitemap.xml

  32. Cospi

    Скорей всего вы попали под АГС и изменения роботса вам врядт ли поможет! Если хотите, то можете мой файлик роботс поставить к себе на сайт — https://cospi.ru/robots.txt Только адрес сайта на свой поменяйте в нём!

  33. Cospi

    Фильтр который накладываеться за несколько факторов — не качесвенные тексты, продажа ссылок и.т.п. Чтоб выйти из под фильтра надо работать над ним и писать Платонам. Это если в двух словах…

  34. Анастасия

    Очень полезная статья. А то я и не знала что нужно это делать обязательно поставлю у себя на сайте. Спасибо!

  35. Андрей

    Думаю, что простое решение, чтобы не писать много букв в роботсе, как Disallow: /wp-login.php Disallow: /wp-register.php Писать для WP. Disallow: /*.php Что скажите?

  36. Наталия

    Я давно искала информацию для решения вопроса с robots.txt. И вдруг такая замечательная, простая и доступная статья. Все разложено по полочкам. Большое спасибо! Удачи Вам!

  37. Aly

    В разделе Самый простой Robots.txt Самый простой robots.txt, который всем поисковым системам, разрешает всё индексировать, выглядит вот так: User-agent: * Disallow:Allow: — разрешить ???????

  38. Ольга

    Здравствуйте! Спасибо огромное за статью. Всё очень доступно и понятно, только вот всё равно могу ошибиться. Два вопроса: у меня сайт html без движка, как должен выглядеть robots.txt(кстати, и как создать для такого сайта sitemap чтобы указать в файле?) И второй вопрос: главная страница открывается и по ссылке _http://edoshavspb.ru и _http://edoshavspb.ru/index.html, нужно ли что-то из них закрывать и как это правильно сделать? Заранее благодарю за ответ.

  39. Cospi

    Насчёт склейки почитайте тут https://cospi.ru/9-neobxodimyx-nastroek-fajla-htaccess#domean Чтобы сделать sitemap воспользуйтесь программой SiteMap Generator. Выглядеть должен в таком же виде как и в этой статье, просто указываете те папки и страницы, которые не должны индексироваться в ПС.

  40. Анна

    Здравствуйте! Посмотрите, пожалуйста, наш robot.txt Сайт очень плохо индексируется. Один специалист прокомментировал: У вас в файле robots.txt закрыты от индексации карточки товаров. Если необходимо, чтобы они идексировались поисковыми системами, то необходимо удалить строчку Disallow: /*?item=*/ Но webmaster.yandex.ru/robots.xml говорит, что все ок! User-agent: * Disallow: *&page=* Disallow: *?page=* Disallow: *&filtr=* Disallow: /?search=* Disallow: /?param=* Disallow: /?to_cart* Disallow: /*?item=*/ Disallow: *&id=* Disallow: /?id=* Disallow: /tiny_mce/*

  41. Cospi

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

  42. Андрей

    Подскажите, пожалуйста, по какой причине файл может не быть загружен в Яндекс при проверке (Загрузить robots.txt с сайта)? Можно ли как-то указать User-agent: *, что бы сканировали все ПС включая привередливость Яндекса? Че-то типо User-agent: yandex * И где там в google эта проверка? Я там не нашел такого, только статистика сканирования. Можно ссылку? Спасибо.

  43. Cospi

    Да, можно добавить User-agent для Яндекса. А сервиса проверки файла Robots.txt у Google нет.

  44. Максим

    На сайте большинство товара с описанием, картинками и большой ценой. Там все в порядке. Но, в некоторых, много дешевой мелочевки. Там достаточно на странице каталога (/svetofiltry-cotech/) сделать общее описание, один нормальный контент для данного бренда и данной продукции. ЭТА страница индексироваться должна. А вот все, что этот каталог содержит (сотни позиций практически без контента) должны отсекаться. Подскажите, пожалуйста, как правильно использовать директиву ‘Disallow’ в этом случае? Заранее благодарен!

  45. Cospi

    Disallow: /cotech Это решит вану проблему. Под запрет попадут все страницы, которые содержат слово cotech

  46. Сергей К.

    Здравствуйте! Спасибо за полезную статью. Но у меня всё же есть пара вопросов. 1. На сайте с WordPress с ЧПУ мне нужно закрыть от индексации наряду со служебными разделами WP также результаты поиска по сайту и дубли. Если написать в robots.txt эти две директивы: Disallow: /?s= Disallow: /*?* то не будут ли исключены из индекса нужные мне УРЛы, в адресах которых присутствует буква «s» ? 2. На моём сайте вообще нет регистрации для посетителей, соответственно нет логин / пароль для входа, нет возможности для комментариев, не используются возможности блога. В таком случае нужны ли вообще в robots.txt эти директивы во всех вариациях: Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /trackback Disallow: /trackback/ Disallow: */trackback Disallow: */trackback/ Disallow: */*/trackback Disallow: /feed/ Disallow: */*/feed/*/ Disallow: */feed Disallow: /comments/ Disallow: */comments/ Если нужны, то какие именно? Заранее спасибо.

  47. Cospi

    По первому вопросу: нет, не будут исключены. По второму: comments можно убрать, а вот wp-login.php и wp-register.php лучше оставить, так как эти страницы есть на сайте, даже если вы их не используете!

  48. Оксана

    Здравствуйте. сайту 2 года.. роботс самый обычный: User-agent: Yandex Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /feed/ Disallow: */feed Disallow: */trackback Disallow: */comments Disallow: /*? Disallow: /*?* Disallow: /tag Host: Sitemap: У меня вопрос: комментарии на моем сайте я так понимаю закрыты от индексирования? Только сейчас дошло.. а ведь это очень полезный контент. разве не так? обсуждения ежедневные. как быть? Если убрать эту строчку: Disallow: */comments не произойдет ли сбой резкий? почему задумалась, сайту 2й год, а посещалка застряла на 300 униках.. и еще смотрю на многих сайтах роботс такого типа: а посещалка 3 тыс. User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php Sitemap: что скажете?

  49. Cospi

    Всё нормально у вас с индексацией комментариев. Это закрыты страницы, которые содержат в урл «comments». Укажите после дирекивы «Sitemap» ссылку на вашу карту сайта.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *