On-Line Библиотека www.XServer.ru - учебники, книги, статьи, документация, нормативная литература.
       Главная         В избранное         Контакты        Карта сайта   
    Навигация XServer.ru








 

Руководство для Web-администратора по протоколу исключений для роботов

Данное руководство помогает администраторам Web-серверов, желающим использовать протокол исключений для роботов (Robots Exclusion Protocol).

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

Введение

Протокол исключений для роботов очень прост. В двух словах он работает так:

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

Как администратор Web-сервера Вы можете создать директивы, которые имеют смысл для Вашего сайта. Эта страница поможет Вам в этом.

Где создавать файл robots.txt

Робот будет искать "/robots.txt" URL на Вашем сайте, где сайт определен как HTTP - сервер запущенный на различных хостах и портах. Например:
URL сайта Соответсвующая Robots.txt URL
http://www.w3.org/ http://www.w3.org/robots.txt
http://www.w3.org:80/ http://www.w3.org:80/robots.txt
http://www.w3.org:1234/ http://www.w3.org:1234/robots.txt
http://w3.org/ http://w3.org/robots.txt

Обратите внимание, что на сайте может быть только один "/robots.txt" . Особенно Вы не должны размещать "robots.txt" файлы в пользовательсктх директориях, потому что робот никогда не увидит их. Если Вы хотите, чтобы пользователи могли создавать свои собственные "robots.txt", Вы должны объединить их всех в единственном "/robots.txt". Если Вы не хотите делать этого, Ваши пользователи могут использовать Robots META Tag.

Также помните, что URL'и чувствительны к регистру и "/robots.txt" должен быть набран в нижнем регистре.

Неправильные robots.txt URLи
http://www.w3.org/admin/robots.txt
http://www.w3.org/~timbl/robots.txt
ftp://ftp.w3.com/robots.txt

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

Для большинства серверов это означает создание файла в директории верхнего уровня на Вашем сервере. На UNIX машине это может быть /usr/local/etc/httpd/htdocs/robots.txt

Что писать в robots.txt файле

Файл "/robots.txt" обычно содержит записи, подобные этим:
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/

В этом примере, три директории исключены.

Обратите внимание, что Вам необходима отдельная строка "Disallow" для каждого префикса URL, который Вы собираетесь исключать -- Вы не можете написать "Disallow: /cgi-bin/ /tmp/". Также, Вы не можете допускать пустые линии в записи так как они используются для разделения множественных записей.

Заметьте также, что регулярные выражения не поддерживаются ни в поле User-agent ни в поле Disallow. '*' в поле User-agent --специальный символ означающий "любой робот". Вы не можете использовать "Disallow: /tmp/*" или "Disallow: *.gif".

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

Исключить посещение всего сервера всеми роботами

User-agent: *
Disallow: /

Разрешить всем роботам полный доступ

User-agent: *
Disallow:

Или создать пустой файл "/robots.txt" file.

Исключить часть сервера от посещения всеми роботами

User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /private/

Исключить для одного робота

User-agent: BadBot
Disallow: /

Разрешить одному роботу

User-agent: WebCrawler
Disallow:

User-agent: *
Disallow: /

Исключить все файлы кроме одного

В настоящий момент добится этого не так просто, как хотелось бы, т.к. поле "Allow" не предусмотрено. Самый простой способ - поместить все файлы, доступ к которым Вы хотите запретить в отдельный каталог, скажем "docs" и оставить единственный файл на уровне выше этого каталога:

User-agent: *
Disallow: /~joe/docs/
В качестве альтернативы мы можете запретить все страницы:
User-agent: *
Disallow: /~joe/private.html
Disallow: /~joe/foo.html
Disallow: /~joe/bar.html


Литература по Internet