Файл robots.txt
  • Что такое robots.txt и для чего он нужен

    Файл robots.txt размещается в корневой директории сайта и описывает исключения для поисковых ботов. Придерживающийся стандартов бот проверяет сначала url "/robots.txt", если файл существует, то бот анализирует его содержимое на предмет наличия запретов к посещению определённых частей сайта. Имя файла не должно содержать заглавных букв. Записи в файле разделяются одной или несколькими пустыми строками. Комментарии в файле robots.txt начинаются знаком “#” и заканчиваются окончанием строки (строки, содержащие только комментарии игнорируются ботами и не являются разделителями записей).

    User-agent
    Имя бота, к которому применяются правила исключений на сайте. Можно прописать несколько строк с User-agent, в этом случае правила, описанные в данной записи будут применяться указанными ботами. Для описывания правил ботам, для которых отдельная запись не составлена применяют следующий параметр: «*» (в файле robots.txt может быть только одна запись User-agent: *).

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


    Примеры для http://site.ru/
    (Показывает как можно сочетать директивы в файле robots.txt но не несущий смысловой нагрузки)

    Код
    User-agent: Yandex
    Disallow: /test/
    Disallow: /print.html
    # Запрещает ботам Яндекса посещать папку http://site.ru/test/
    # и файл http://site.ru/print.html

    User-agent: Aport
    User-agent: Googlebot
    Disallow: /temp/img/
    # Запрещает посещение ботами Google и Апорт http://site.ru/temp/img/

    User-agent: StackRambler
    Disallow:
    # Для бота поисковой системы Рамблер разрешено посещение всех
    # страниц и папок сайта

    User-Agent: *
    Disallow: /lesson.php?action=test
    # Запрещает посещение всеми ботами, для которых не сделана
    #отдельная запись,
    # динамических страниц, начинающихся с http://site.ru/lesson.php?action=test
    # например: http://site.ru/lesson.php?action=test&id=13
    # чувствительно к порядку переменных в ссылке


    Некоторые поисковые системы поддерживают дополнительные поля в файле robots.txt. Яндексом поддерживается директива Host, служащая для назначения основного зеркала:

    Код
    User-agent: Yandex
    Disallow: /test/
    Host: site.ru
    # разрешено посещение всех страниц и папок на сайте, кроме http://site.ru/test/
    # основным зеркалом назначено http://site.ru/

    User-agent: *
    Disallow:
    # всем ботам, кроме бота Яндекса, разрешено посещение всех страниц и
    # папок на сайте


    Запретить сайт к индексации полностью можно с помощью такого файла robots.txt

    Код
    User-agent: *
    Disallow: /


    Наиболее актуальные для Рунета, на мой взгляд, боты:
    (думаю, даже расшифровывать не требуется)
    Yandex
    Googlebot
    StackRambler
    Aport

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

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

    Стоит запретить к индексации:
    - документы "для печати"
    - папки со скриптами
    - папки с картинками (если у Вас не предвидится целевой аудитории с поиска по картинкам)
    - сервисные страницы, такие как, например, страница с формой отправки письма администрации, схема проезда

    Ошибки, допускаемые при составлении robots.txt
    Как не надо делать:
    Имя файла содержит заглавные буквы – Robots.txt или ROBOTS.TXT
    Файл robots.txt размещается не в корневой директории
    Пустая строка после поля User-agent
    Отсутствие директивы Disallow
    Использование в поле Disallow символов подстановки или регулярных выражений, например: "?", "*"
    Больше одной строки "Disallow: *"


    Пример ничего не запрещающего robots.txt
    (основное зеркало site.ru)

    Код
    User-agent: *
    Disallow:

    User-agent: Yandex
    Disallow:
    Host: site.ru


    Список не полный и будет дополняться по мере поступления идей с ошибками.
  • +5, ясно, просто, доходчиво
    не мешало бы имена ботов некоторые написать )
  • Учитывая пожелания teg назвал основных ботов по именам.
  • Напиши, что рекомендуется запрещать: скрипты, картинки и.т.д с примером, так будет доходчевее.
  • 2 uniks
    Примеров же привёл вроде бы предостаточно.
    Я конечно понимаю, что найдутся и те, которые неувидят их, но не писать же на каждый случай пример? Так страниц на десять растянуть можно будет :)
  • хорошо расписал... 5+
    у меня есть вопрос, на который никак не могу найти ответа..
    есть site.ru и есть куча sub.site.ru (контент разный), мне нужно, чтобы это определялось как разные сайты. насколько я пока понял (по опыту других своих сайтов) - если просто не писать роботс.тхт, то всё будет респект... но можно ли как-то это сделать при помощи роботс, чтоб уж наверняка..
  • Рекомендации по запрету к индексации
    Стоит запретить к индексации:
      - документы "для печати"


    Почему?
  • Хочу от гугля спрятать продажную страницу.

    User-agent: Googlebot
    Dissalow: /contract.html

    так правильно???
  • 2 rahowa
    Потому что страница для печати обычно делается без навигации, но зачастую более релевантна запросу чем основная.

    2 cd-info
    Да, правильно, есле запрет касается только Гугля.
  • Ага, я тоже не понял, про версию для печати. Она же может быть вообще хорошо релевантна, а не только по сравнению с непечатной версией. А немножко навигации прикрутить можно. Типа логический путь документа на сайте.
  • Ага, я тоже не понял, про версию для печати. Она же может быть вообще хорошо релевантна, а не только по сравнению с непечатной версией. А немножко навигации прикрутить можно. Типа логический путь документа на сайте.

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

    ИМХО, лучше запрещать.
  • 2 rahowa
    Потому что страница для печати обычно делается без навигации, но зачастую более релевантна запросу чем основная.

    2 cd-info
    Да, правильно, есле запрет касается только Гугля.


    Хм... всегде есть кнопка посмотреть полную версию и перейти на сайт, если посетителя заинтересует материал уж он то найдет куда ткнуть чтоб почитать остальное.
  • если сайт сделан на xsl , страницы генерятся из кусков,
    адресная строка выглядит следующим образом - www.sitename/directory/katalogi/
    (т.е. нет традиционного .хтмл или .пхп в адресе)

    а мне нужно ету страницу запретить к индексации

    стоит ли тогда писать

    User-agent: *
    Dissalow: /directory/katalogi/
  • Имеет ли значение последовательность:
    Код
    User-Agent: *
    Disallow:

    User-Agent: Yandex
    Disallow:
    Host: site.ru

    или
    Код
    User-Agent: Yandex
    Disallow:
    Host: site.ru

    User-Agent: *
    Disallow:
  • Имеет ли значение последовательность:
    Код
    User-Agent: *
    Disallow:

    User-Agent: Yandex
    Disallow:
    Host: site.ru

    или
    Код
    User-Agent: Yandex
    Disallow:
    Host: site.ru

    User-Agent: *
    Disallow:

    если не ошибаюсь - сначала лучше конкретику, а потом все остальное, тобиш 2 вариант
  • Хорошая тема! Респект AleM!
  • А МОЖНО ЛИ С ПОМОЩЬЮ ЭТОГО ФАЙЛА РАЗДЕЛИТЬ ЗЕРКАЛА?

    У меня 2 сайта.

    site.ru и site.narod.ru

    site.narod.ru стал зеркалом site.ru, я хочу чтобы эти 2 сайта были в серпе.
    Как поступить?

    Загрузить на site.narod.ru вот такой тест, поможет?

    User-Agent: Yandex
    Disallow:
    Host: site.narod.ru
  • 2cd-info
    не стоит, зеркальщика заклинить может, и как он поведет себя и что сделает зеркалом не извесно, лучше выжимай из зеркала все бонусы на основной, да и в серпе зеркало не нужно
  • 2cd-info
    не стоит, зеркальщика заклинить может, и как он поведет себя и что сделает зеркалом не извесно, лучше выжимай из зеркала все бонусы на основной, да и в серпе зеркало не нужно


    да это понятно.
    Но бывает так что сайт влетает в даун, проблема хостера и т.д... а тут хоть site.narod.ru работать будет.
    Всёж narod самый надёжный хостинг из безплатных хоть и с кучей минусов.
    Кстати это только Яндекс зазеркалил site.narod.ru в остальных идут раздельно. :)
  • А МОЖНО ЛИ С ПОМОЩЬЮ ЭТОГО ФАЙЛА РАЗДЕЛИТЬ ЗЕРКАЛА?

    У меня 2 сайта.

    site.ru и site.narod.ru

    site.narod.ru стал зеркалом site.ru, я хочу чтобы эти 2 сайта были в серпе.
    Как поступить?

    Загрузить на site.narod.ru вот такой тест, поможет?

    User-Agent: Yandex
    Disallow:
    Host: site.narod.ru


    а всё же поможет это или нет?
  • У меня стоит в robots.txt , для сайта на mambo cms
    User-agent: *
    Disallow: /administrator/
    Disallow: /cache/
    Disallow: /components/
    Disallow: /editor/
    Disallow: /help/
    Disallow: /images/
    Disallow: /includes/
    Disallow: /language/
    Disallow: /mambots/
    Disallow: /media/
    Disallow: /modules/
    Disallow: /templates/
    Disallow: /installation/

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

Привет, незнакомец!

Похоже, Вы новенький! Чтобы начать обсуждение, кликните на одну из кнопок ниже ;)

Войти с помощью OpenID

Категории

В этой теме: