Стандарт исключений для роботов

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Стандарт исключений для роботов — стандарт ограничения доступа роботам к содержимому на http-сервере при помощи текстового файла robots.txt, находящегося в корне сайта (то есть имеющего путь относительно имени сайта /robots.txt). Действие файла не распространяется на сайты, расположенные на поддоменах.

Следование стандарту добровольно. Стандарт был принят консорциумом W3C 30 января 1994 года в списке рассылки robots-request@nexor.co.uk и с тех пор используется большинством известных поисковых машин.

Файл robots.txt используется для частичного управления обходом сайта поисковыми роботами. Этот файл состоит из набора инструкций для поисковых машин, при помощи которых можно задать файлы, страницы или каталоги сайта, которые не должны запрашиваться.

Описание структуры[править | править код]

Файл состоит из записей. Записи разделяются одной или более пустых строк (признак конца строки: символы CR, CR+LF, LF). Каждая запись содержит непустые строки следующего вида:

<поле>:<необязательный пробел><значение><необязательный пробел>

где поле — это либо User-agent, либо Disallow.

В директиве User-agent указываются роботы, которые должны следовать указанным инструкциям (например, User-agent: Yandex, User-agent: YandexBot, User-agent: *).

Сравнение производится методом простого поиска подстроки. Например, запись

Disallow: /about

запретит доступ как к разделу http://example.com/about/ (недоступная ссылка), так и к файлу http://example.com/about.php (недоступная ссылка), а запись

Disallow: /about/

— только к разделу http://example.com/about/ (недоступная ссылка).

Файл может содержать комментарии. Комментарием является часть строки, начинающаяся с символа #.

Проверка синтаксиса[править | править код]

Неправильно составленный robots.txt может привести к отрицательным последствиям. Например, весь сайт может «выпасть» из поискового индекса. Для проверки синтаксиса и структуры файла robots.txt существует ряд специализированных онлайн-служб:

Примеры[править | править код]

Запрет доступа всех роботов ко всему сайту:

User-agent: *
Disallow: /

Запрет доступа определённого робота к каталогу /private/:

User-agent: googlebot
Disallow: /private/

Нестандартные директивы[править | править код]

Allow: имеет действие, обратное директиве Disallow — разрешает доступ к определенной части ресурса. Поддерживается всеми основными поисковиками. В следующем примере разрешается доступ к файлу photo.html, а доступ поисковиков ко всей остальной информации в каталоге /album1/ запрещается.

Allow: /album1/photo.html
Disallow: /album1/

Crawl-delay: устанавливает время, которое робот должен выдерживать между загрузкой страниц. Если робот будет загружать страницы слишком часто, это может создать излишнюю нагрузку на сервер. Впрочем, современные поисковые машины по умолчанию задают достаточную задержку в 1-2 секунды. На данный момент эта директива не учитывается Googlebot.

User-agent: *
Crawl-delay: 10

Sitemap: расположение файлов Sitemaps, которые могут показать, что именно нужно проиндексировать поисковому роботу.

Sitemap: http://example.com/sitemap.xml

Расширенный стандарт[править | править код]

В 1996 году был предложен расширенный стандарт robots.txt, включающий такие директивы как Request-rate и Visit-time. Например:

User-agent: *
Disallow: /downloads/
Request-rate: 1/5         # загружать не более одной страницы за пять секунд
Visit-time: 0600-0845     # загружать страницы только в промежуток с 6 утра до 8:45 по Гринвичу.

См. также[править | править код]

Ссылки[править | править код]