robots.txt или запрет индексации

12 3
L
На сайте с 03.02.2009
Offline
66
3191

Решил создать темку, думаю будет к стати.

(советую прикрепить)

1)Файл robots.txt загоняется в корневую директорию.

2)Содержание можно посмотреть по ссылке (http://help.yandex.ru/webmaster/?id=996567) или ниже.

3)Экспериментировать в создании robots.txt Вы можете тут.

4)После создания файла, и загрузки на сервер, удалите свой url тут

Примечание: создайте robots.txt с таким содержанием, и сайт не будет индексироваться целиком.

User-agent: Yandex

Disallow:/
Для ленивых-ниже справочная инфа по заполнению.

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

Управлять доступом робота Яндекса к вашему сайту вы можете при помощи файла robots.txt. Робот Яндекса поддерживает стандарт описания http://www.robotstxt.org/wc/norobots.html с расширенными возможностями, описанными ниже.

В роботе Яндекса используется сессионный принцип работы, на каждую сессию формируется определенный пул страниц, которые планирует закачать робот. Сессия начинается с закачки robots.txt сайта, если его нет, он не текстовый или на запрос робота возвращается HTTP-код отличный от '200', считается, что доступ роботу не ограничен. В самом robots.txt проверяется наличие записей, начинающихся с 'User-agent:', в них ищутся подстроки 'Yandex', либо '*' (регистр значения не имеет), причем, если обнаружено 'User-agent: Yandex', директивы для 'User-agent: *' не учитываются. Если записи 'User-agent: Yandex' и 'User-agent: *' отсутствуют, считается, что доступ роботу не ограничен.

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

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

User-agent: Yandex

Disallow: / # блокирует доступ ко всему сайту

User-agent: Yandex

Disallow: /cgi-bin # блокирует доступ к страницам начинающимся с '/cgi-bin'

Примечание:

Недопустимо наличие пустых переводов строки между директивами 'User-agent' и 'Disallow' ('Allow'), а также между самими 'Disallow' ('Allow') директивами.

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

Символ '#' предназначен для описания комментариев. Все, что находится после этого символа и до первого перевода строки не учитывается.

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

User-agent: Yandex

Allow: /cgi-bin

Disallow: /

# запрещает скачивать все, кроме страниц начинающихся с '/cgi-bin'

Совместное использование директив.

Если для данной страницы сайта подходит несколько директив, то выбирается первая в порядке появления в выбранном User-agent блоке. Примеры, если:

User-agent: Yandex

Allow: /cgi-bin

Disallow: /

# запрещает скачивать все, кроме страниц начинающихся с '/cgi-bin'

User-agent: Yandex

Disallow: /

Allow: /cgi-bin

# запрещает скачивать весь сайт

Директивы Allow-Disallow без параметров.

Отсутствие параметров у директивы трактуется следующим образом:

User-agent: Yandex

Disallow: # тоже что и Allow: /

User-agent: Yandex

Allow: # тоже что и Disallow: /

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

При указании путей директив Allow-Disallow можно использовать спецсимволы '*' и '$', задавая, таким образом, определенные регулярные выражения. Спецсимвол '*' означает любую (в том числе пустую) последовательность символов. Примеры:

User-agent: Yandex

Disallow: /cgi-bin/*.aspx # запрещает '/cgi-bin/example.aspx' и '/cgi-bin/private/test.aspx'

Disallow: /*private # запрещает не только '/private', но и '/cgi-bin/private'

Спецсимвол '$'.

По умолчанию к концу каждого правила, описанного в robots.txt, приписывается '*', например:

User-agent: Yandex

Disallow: /cgi-bin* # блокирует доступ к страницам начинающимся с '/cgi-bin'

Disallow: /cgi-bin # то же самое

чтобы отменить '*' на конце правила, можно использовать спецсимвол '$', например:

User-agent: Yandex

Disallow: /example$ # запрещает '/example', но не запрещает '/example.html'

User-agent: Yandex

Disallow: /example # запрещает и '/example', и '/example.html'

User-agent: Yandex

Disallow: /example$ # запрещает только '/example'

Disallow: /example*$ # так же, как 'Disallow: /example' запрещает и /example.html и /example

Директива Sitemap.

Если вы используете описание структуры вашего сайта в формате sitemaps.xml, и хотите, чтобы робот узнал о ней, укажите путь к sitemaps.xml, в качестве параметра директивы 'Sitemap' (если файлов несколько, укажите все), примеры:

User-agent: Yandex

Allow: /

Sitemap: http://mysite.ru/site_structure/my_sitemaps1.xml

Sitemap: http://mysite.ru/site_structure/my_sitemaps2.xml

или

User-agent: Yandex

Allow: /

User-agent: *

Disallow: /

Sitemap: http://mysite.ru/site_structure/my_sitemaps1.xml

Sitemap: http://mysite.ru/site_structure/my_sitemaps2.xml

Робот запомнит пути к sitemaps.xml, обработает файлы и будет использовать результаты при последующем формировании сессий закачки.

Директива Host.

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

#Если www.glavnoye-zerkalo.ru главное зеркало сайта, то robots.txt

#для всех сайтов из группы зеркал выглядит так

User-Agent: *

Disallow: /forum

Disallow: /cgi-bin

Host: www.glavnoye-zerkalo.ru

Важно: в целях совместимости с роботами, которые не полностью следуют стандарту при обработке robots.txt, директиву 'Host' необходимо добавлять в группе, начинающейся с записи 'User-Agent', непосредственно после директив 'Disallow'('Allow'). Аргументом директивы 'Host' является доменное имя с номером порта (80 по умолчанию), отделенным двоеточием.

#Пример корректно составленного robots.txt, при обработке которого директива Host учитывается

User-Agent: *

Disallow:

Host: www.myhost.ru

#Примеры некорректно составленных robots.txt, при обработке которых директива Host может не учитываться

#1.

User-Agent: *

Host: www.myhost.ru

#2.

Host: www.myhost.ru

#3.

User-Agent: *

Host: www.myhost.ru

Disallow:

#4.

Host: www.myhost.ru

User-Agent: *

Disallow:

Важно: параметр директивы Host обязан состоять из одного корректного имени хоста (т.е. соответствующего RFC 952 и не являющегося IP-адресом) и допустимого номера порта. Некорректно составленные строчки 'Host:' игнорируются.

# Примеры игнорируемых директив Host

Host: www.myhost-.ru

Host: www.-myhost.ru

Host: www.myhost.ru:100000

Host: www.my_host.ru

Host: .my-host.ru:8000

Host: my-host.ru.

Host: my..host.ru

Host: www.myhost.ru/

Host: www.myhost.ru:8080/

Host: http://www.myhost.ru

Host: 213.180.194.129

Host: www.firsthost.ru,www.secondhost.ru

Host: www.firsthost.ru www.secondhost.ru

Примеры использования директивы Host:

# domen.myhost.ru является главным зеркалом www.domen.myhost.ru,

# тогда корректное использование директивы Host такое

User-Agent: *

Disallow:

Host: domen.myhost.ru

# domen.myhost.ru является главным зеркалом www.domen.myhost.ru,

# тогда некорректное использование директивы Host такое

User-Agent: *

Disallow:

Host: myhost.ru

L
На сайте с 03.02.2009
Offline
66
#1

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

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

Поисковый робот Яндекса поддерживает дробные значения Crawl-Delay, например, 0.5. Это не гарантирует, что поисковый робот будет заходить на ваш сайт каждые полсекунды, но дает роботу больше свободы и позволяет ускорить обход сайта.

Примеры:

User-agent: Yandex

Crawl-delay: 2 # задает таймаут в 2 секунды

User-agent: *

Disallow: /search

Crawl-delay: 4.5 # задает таймаут в 4.5 секунды

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

Если адреса страниц вашего сайта содержат динамические параметры которые не влияют на их содержимое (например: идентификаторы сессий, пользователей, рефереров и т.п.), вы можете описать их при помощи директивы 'Clean-param'. Робот Яндекса, используя эту информацию, не будет многократно перезакачивать дублирующуюся информацию. Таким образом, увеличится эффективность обхода вашего сайта, снизится нагрузка на сервер.

Например, на сайте есть страницы:

www.site.ru/some_dir/get_book.pl?ref=site_1&book_id=123

www.site.ru/some_dir/get_book.pl?ref=site_2&book_id=123

www.site.ru/some_dir/get_book.pl?ref=site_3&book_id=123

параметр 'ref=' используется только для того, чтобы отследить с какого ресурса был сделан запрос и не меняет содержимое, по всем трем адресам будет показана одна и та же страница с книгой 'book_id=123'. Тогда, если в robots.txt указать:

Clean-param: ref /some_dir/get_book.pl

вот так:

User-agent: Yandex

Disallow:

Clean-param: ref /some_dir/get_book.pl

робот Яндекса сведет все адреса страницы к одному:

www.site.ru/some_dir/get_book.pl?ref=site_1&book_id=123,

и будет чаще обходить другие страницы вашего сайта, так как нет необходимости обновлять страницы:

www.site.ru/some_dir/get_book.pl?ref=site_2&book_id=123

www.site.ru/some_dir/get_book.pl?ref=site_3&book_id=123

Синтаксис использования директивы:

Clean-param: p0[&p1&p2&..&pn] [path]

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

Примечание:

Префикс может содержать регулярное выражение в формате, аналогичном robots.txt, но с некоторыми ограничениями: можно использовать только символы A-Za-z0-9.-/*_. При этом * трактуется так же, как в robots.txt. В конец префикса всегда неявно дописывается '*', то есть:

Clean-param: s /forum/showthread.php

означает, что будет сбрасываться параметр s у всех url-ов, начинающихся с /forum/showthread.php. Второе поле указывать необязательно, в этом случае параметр(ы) не будет учитываться для всех адресов страниц сайта. Регистр учитывается. Действует ограничение на длину правила - 500 символов. Например:

Clean-param: abc /forum/showthread.php

Clean-param: sid&sort /forumt/*.php

Clean-param: someTrash&otherTrash

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

#для адресов вида:

www.site1.ru/forum/showthread.php?s=681498b9648949605&t=8243

www.site1.ru/forum/showthread.php?s=1e71c4427317a117a&t=8243

#robots.txt будет содержать:

User-agent: Yandex

Disallow:

Clean-param: s /forum/showthread.php

#для адресов вида:

www.site2.ru/index.php?page=1&sort=3a&sid=2564126ebdec3150c2d5d3e1c607e5df

www.site2.ru/index.php?page=1&sort=3a&sid=974017dcd170d6f0640bd2ec4a5d76ae

#robots.txt будет содержать:

User-agent: Yandex

Disallow:

Clean-param: sid /index.php

#если таких параметров несколько:

www.site1.ru/forum_old/showthread.php?s=681498b9648949605&t=8243&ref=131951

www.site1.ru/forum_new/showthread.php?s=1e71c4427317a117a&t=8243&ref=989612

#robots.txt будет содержать:

User-agent: Yandex

Disallow:

Clean-param: s&ref /forum*/showthread.php

#если параметр используется в нескольких скриптах:

www.site1.ru/forum/showthread.php?s=681498b9648949605&t=8243

www.site1.ru/forum/index.php?s=1e71c4427317a117a&t=8243

#robots.txt будет содержать:

User-agent: Yandex

Disallow:

Clean-param: s /forum/index.php

Clean-param: s /forum/showthread.php

Дополнительная информация.

Директивы robots.txt, которые не упомянуты в данном описании, робот Яндекса не поддерживает.

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

User-agent: Yandex

Allow: /

Disallow: /

# без расширений все запрещалось так как 'Allow: /' игнорировалось,

# с поддержкой расширений все разрешается

User-agent: Yandex

Disallow: /private*html

# без расширений запрещалось '/private*html',

# а с поддержкой расширений и '/private*html',

# и '/private/test.html', и '/private/html/test.aspx' и т.п.

User-agent: Yandex

Disallow: /private$

# без расширений запрещалось '/private$' и '/private$test' и т.п.,

# а с поддержкой расширений только '/private'

User-agent: *

Disallow: /

User-agent: Yandex

Allow: /

# без расширений из-за отсутствия перевода строки,

# 'User-agent: Yandex' было бы проигнорировано и

# результатом стало бы 'Disallow: /', но робот Яндекса

# выделяет записи по наличию в строке 'User-agent:',

# результат для робота Яндекса в данном случае 'Allow: /'

User-agent: *

Disallow: /

# комментарий1...

# комментарий2...

# комментарий3...

User-agent: Yandex

Allow: /

# аналогично предыдущему примеру (см. выше)

Примеры использования расширенного формата robots.txt:

User-agent: Yandex

Allow: /archive

Disallow: /

# разрешает все, что содержит '/archive', остальное запрещено

User-agent: Yandex

Allow: /obsolete/private/*.html$ # разрешает html файлы по пути '/obsolete/private/...'

Disallow: /*.php$ # запрещает все '*.php' на данном сайте

Disallow: /*/private/ # запрещает все подпути содержащие '/private/', но Allow выше отменяет часть запрета

Disallow: /*/old/*.zip$ # запрещает все '*.zip' файлы, содержащие в пути '/old/'

User-agent: Yandex

Disallow: /add.php?*user=

# запрещает все скрипты 'add.php?' с параметром 'user'

При написании robots.txt необходимо помнить, что у робота есть разумное ограничение на его размер. Слишком большие robots.txt (более 256 Кб) считаются полностью разрешающими, то есть рассматриваются аналогично:

User-agent: Yandex

Disallow:

apap
На сайте с 03.09.2008
Offline
167
#2

о_О спасибо спасибо:)

Дед мороз что-то вы запаздали )))

Ёхан Палыч
На сайте с 07.05.2006
Offline
169
#3
Liave:
Решил создать темку, думаю будет к стати.
(советую прикрепить)

Ух ты! Без году неделя, а уже советует.

Liave:
Для ленивых-ниже справочная инфа по заполнению.

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

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

В
На сайте с 19.04.2008
Offline
114
#4

CTRL+C, CTRL+V. Как же сложно это оказалось сделать :)

#kletka#
На сайте с 15.04.2004
Offline
170
#5

скромно.... ща я сюда второе издание Ашманова выложу.

Продаю фото со всех фотобанков по 1$ по Расширенной лицензии. Skype: kletka79
Revan
На сайте с 09.09.2005
Offline
321
#6

User-agent: Yandex
Disallow:/

И что же будет происходить при таком robots.txt ? 😂

С уважением, Прокофьев Александр, founder KudaGo.com (http://kudago.com). Отдаем информацию обо всех мероприятиях в РФ + Киев по API (/ru/forum/912869) всем желающим.
L
На сайте с 03.02.2009
Offline
66
#7
Revan:
И что же будет происходить при таком robots.txt ? 😂

написано же ))

Ни 1 страница индексироваться не будет

Ёхан Палыч:
Ух ты! Без году неделя, а уже советует.

Liave добавил 06.02.2009 в 15:27

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

Alexey Levin
На сайте с 17.07.2007
Offline
188
#8
Liave:
написано же ))
Ни 1 страница индексироваться не будет

100%?

Во всех поисковиках?

Один поисковый запрос занимает больше вычислений, чем отправка человека на Луну.
L
На сайте с 03.02.2009
Offline
66
#9
Ёхан Палыч:
Ух ты! Без году неделя, а уже советует.

Типа, если лень пройти по ссылке, то будут тут многа букав читать, аж на два экрана? Для ленивых роботс не нужен.
Попытка дешевой популярности не проканала, изобретите что-нибудь свое, как минимум соберите из разных источников и обобщите.
Alexey Levin:
100%?
Во всех поисковиках?

User-agent: Yandex

Disallow:/

Я думаю здесь можно понять, что речь идёт про яндекс.

Liave добавил 06.02.2009 в 16:56

комунить пригадилось ?

Alexey Levin
На сайте с 17.07.2007
Offline
188
#10

пригАдилось - да

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий