18:40 Как составить robots.txt |
Воспользуйтесь
любым текстовым редактором (например, Блокнотом или WordPad'ом),
создайте файл с именем "robots.txt" и заполните его в соответствии с
представленными ниже правилами. После этого необходимо загрузить файл в
корневой каталог вашего сайта Чтобы проверить правильность обработки вашего файла robots.txt, воспользуйтесь анализатором файла robots.txt. Управлять доступом робота Яндекса к вашему сайту вы можете при помощи
файла 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: *' отсутствуют, считается, что доступ роботу не ограничен. Следующим роботам Яндекса можно указать отдельные директивы: 'YandexBot' — основной индексирующий робот; 'YandexMedia' — робот, индексирующий мультимедийные данные; 'YandexImages' — индексатор Яндекс.Картинок; 'YandexCatalog' — "простукивалка" Яндекс.Каталога; 'YandexDirect' — робот, индексирующий страницы сайтов, участвующих в Рекламной сети Яндекса; 'YandexBlogs' — робот поиска по блогам, индексирующий комментарии постов;
'YandexNews' — робот Яндекс.Новостей; 'YandexPagechecker' — робот, обращающийся к странице при валидации микроразметки через форму «Валидатор микроразметки»; Для каждого из них также действительно правило: если обнаружены директивы для конкретного робота, директивы 'User-agent: Yandex' и 'User-agent: *' не используются. Пример:
Использование директив Disallow и Allow Чтобы запретить доступ робота к некоторым частям сайта или сайту целиком, используйте директиву 'Disallow'. Примеры:
Примечание: Недопустимо наличие пустых переводов строки между директивами 'User-agent' и 'Disallow' ('Allow'), а также между самими 'Disallow' ('Allow') директивами. Кроме того, в соответствии со стандартом перед каждой директивой 'User-agent' рекомендуется вставлять пустой перевод строки. Символ '#' предназначен для описания комментариев. Все, что находится после этого символа и до первого перевода строки не учитывается. Чтобы разрешить доступ робота к некоторым частям сайта или сайту целиком, используйте директиву 'Allow'. Примеры:
Совместное использование директив. Если для данной страницы сайта подходит несколько директив, то выбирается первая в порядке появления в выбранном User-agent блоке. Примеры:
Директивы Allow-Disallow без параметров. Отсутствие параметров у директивы трактуется следующим образом:
Использование спецсимволов "*" и "$"При указании путей директив Allow-Disallow можно использовать спецсимволы '*' и '$', задавая, таким образом, определенные регулярные выражения. Спецсимвол '*' означает любую (в том числе пустую) последовательность символов. Примеры:
Спецсимвол '$' По умолчанию к концу каждого правила, описанного в robots.txt, приписывается '*', например:
Чтобы отменить '*' на конце правила, можно использовать спецсимвол '$', например:
Директива SitemapЕсли вы используете описание структуры вашего сайта в формате sitemaps.xml, и хотите, чтобы робот узнал о ней, укажите путь к sitemaps.xml в качестве параметра директивы 'Sitemap' (если файлов несколько, укажите все). Пример:
Робот запомнит пути к sitemaps.xml, обработает файлы и будет использовать результаты при последующем формировании сессий закачки. Директива HostЕсли у вашего сайта есть зеркала, специальный робот зеркальщик определит их и сформирует группу зеркал вашего сайта. В поиске будет участвовать только главное зеркало. Вы можете указать его у всех зеркал при помощи robots.txt, используя директиву 'Host' и определив в качестве ее параметра имя главного зеркала. Директива 'Host' не гарантирует выбор указанного главного зеркала, тем не менее, алгоритм при принятии решения учитывает ее с высоким приоритетом. Пример:
Важно: в целях совместимости с роботами, которые не полностью следуют стандарту при обработке robots.txt, директиву 'Host' необходимо добавлять в группе, начинающейся с записи 'User-Agent', непосредственно после директив 'Disallow'('Allow'). Аргументом директивы 'Host' является доменное имя с номером порта (80 по умолчанию), отделенным двоеточием.
Тем не менее директива Host является межсекционной, поэтому будет использоваться роботом вне зависимости от места в файле robots.txt, где она указана. Важно: Директива Host в файле robots.txt может быть только одна. В случае указания нескольких директив, использоваться будет первая. Пример:
Важно: параметр директивы Host обязан состоять из одного корректного имени хоста (то есть соответствующего RFC 952 и не являющегося IP-адресом) и допустимого номера порта. Некорректно составленные строчки 'Host:' игнорируются.
Примеры использования директивы Host:
Директива Crawl-delayЕсли сервер сильно нагружен и не успевает отрабатывать запросы на закачку, воспользуйтесь директивой "Crawl-delay". Она позволяет задать поисковому роботу минимальный период времени (в секундах) между концом закачки одной страницы и началом закачки следующей. В целях совместимости с роботами, которые не полностью следуют стандарту при обработке robots.txt, директиву "Crawl-delay" необходимо добавлять в группе, начинающейся с записи "User-Agent", непосредственно после директив "Disallow" ("Allow"). Поисковый робот Яндекса поддерживает дробные значения Crawl-Delay, например, 0.5. Это не гарантирует, что поисковый робот будет заходить на ваш сайт каждые полсекунды, но дает роботу больше свободы и позволяет ускорить обход сайта. Примеры:
Директива Clean-paramЕсли адреса страниц вашего сайта содержат динамические параметры, которые не влияют на их содержимое (например: идентификаторы сессий, пользователей, рефереров и т.п.), вы можете описать их при помощи директивы 'Clean-param'. Робот Яндекса, используя эту информацию, не будет многократно перезакачивать дублирующуюся информацию. Таким образом, увеличится эффективность обхода вашего сайта, снизится нагрузка на сервер. Например, на сайте есть страницы:
параметр 'ref=' используется только для того, чтобы отследить с какого ресурса был сделан запрос и не меняет содержимое, по всем трем адресам будет показана одна и та же страница с книгой 'book_id=123'. Тогда, если в robots.txt указать:
Вот так:
Робот Яндекса сведет все адреса страницы к одному:
Если на сайте доступна страница без параметров:
То все сведется именно к ней, когда она будет проиндексирована роботом. Другие страницы вашего сайта будут обходиться чаще, так как нет необходимости обновлять страницы:
Синтаксис использования директивы:
В первом поле через '&' перечисляются параметры, которые нужно не учитывать. Во втором поле указывается префикс пути страниц, для которых нужно применить правило. Важно: директива Clean-Param является межсекционной, поэтому может быть указана в любом месте файла robots.txt. В случае, если директив указано несколько, все они будут учтены роботом. Примечание: Префикс может содержать регулярное выражение в формате, аналогичном robots.txt, но с некоторыми ограничениями: можно использовать только символы A-Za-z0-9.-/*_. При этом * трактуется так же, как в robots.txt. В конец префикса всегда неявно дописывается '*', то есть:
означает, что параметр s будет считаться незначащим для всех url-ов, начинающихся с /forum/showthread.php. Второе поле указывать необязательно, в этом случае правило будет применяться для всех страниц сайта. Регистр учитывается. Действует ограничение на длину правила — 500 символов. Например:
Дополнительные примеры:
Дополнительная информацияДирективы robots.txt, которые не упомянуты в данном описании, робот Яндекса не поддерживает. Необходимо помнить, что результат использования расширений формата robots.txt может отличаться от результата без них, а именно:
Примеры использования расширенного формата robots.txt:
При написании robots.txt необходимо помнить, что у робота есть разумное ограничение на его размер. Слишком большие robots.txt (более 32 Кб) считаются полностью разрешающими, то есть рассматриваются аналогично:
Также разрешающими считаются robots.txt, которые не удалось закачать (например, по причине неправильных http-заголовков) или отдающие 404 ошибку. Для проверки правильности файла robots.txt вы можете воспользоваться специальным on-line анализатором. См. описание «Анализатор robots.txt» |
|
Всего комментариев: 0 | |
html-cсылка на публикацию | |
BB-cсылка на публикацию | |
Прямая ссылка на публикацию |