Данное руководство помогает администраторам
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
|